无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站广告联系 微信:wuyouceo QQ:184822951
查看: 6076|回复: 48
打印 上一主题 下一主题

[求助] (已解决)图片如何批量转换成unicode,请大神们支招(感谢slore和黑中见白两位大神

[复制链接]
跳转到指定楼层
1#
发表于 2020-4-2 07:17:44 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
提示: 作者被禁止或删除 内容自动屏蔽
2#
发表于 2020-4-2 09:30:44 | 只看该作者
不懂,帮顶一下
回复

使用道具 举报

3#
发表于 2020-4-2 09:32:12 | 只看该作者
本帖最后由 slore 于 2020-4-2 11:46 编辑

python,ruby代码估计3~5行就好了,都自带了字符串编码库。
  1. Dir.glob("D:\文字图片\*.bmp").files.each |file| do
  2.       file.name = file.name[1 .. -4].encode("unicode").hex() + ".bmp"
  3. end
复制代码




回复

使用道具 举报

4#
 楼主| 发表于 2020-4-2 10:02:40 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

5#
 楼主| 发表于 2020-4-2 10:03:04 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

6#
发表于 2020-4-2 10:10:18 | 只看该作者
看看先,现成软件?
回复

使用道具 举报

7#
发表于 2020-4-2 10:10:35 | 只看该作者
本帖最后由 slore 于 2020-4-2 10:11 编辑
翅膀 发表于 2020-4-2 10:03
python脚本我不会,那种自动转码的方法我会操作,就是转码后,把图片的名称也直接批量修改,这个不会,您 ...

用自己知道的方法进行组合:

dir /b *.bmp 生成名字一览

你会转码就print输出下面的字符串:
ren  一.bmp u4e00.bmp

重定向到一个  改名.bat

然后双击不就好了?要自动,你的代码再 cmd.exe /c 改名.bat 调用下。
回复

使用道具 举报

8#
发表于 2020-4-2 11:00:09 | 只看该作者
哇,居然有这样的操作
回复

使用道具 举报

9#
 楼主| 发表于 2020-4-2 11:38:36 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

10#
 楼主| 发表于 2020-4-2 11:39:53 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

11#
 楼主| 发表于 2020-4-2 11:46:19 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

12#
发表于 2020-4-2 12:01:09 | 只看该作者
本帖最后由 slore 于 2020-4-2 12:09 编辑
翅膀 发表于 2020-4-2 11:46
再次请教,我中文转unicode用的是java里的native2ascii,python确实不会,能否再解答一下,非常感谢!

name.py
  1. import os
  2. for file in os.listdir("test"):
  3.     print("ren " + file + " u" + hex(ord(file[:-4]))[2:] + ".bmp")
复制代码




回复

使用道具 举报

13#
发表于 2020-4-2 12:39:59 | 只看该作者
学习一下
回复

使用道具 举报

14#
 楼主| 发表于 2020-4-2 14:07:20 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

15#
发表于 2020-4-2 14:10:41 | 只看该作者
翅膀 发表于 2020-4-2 14:07
感谢解答,虽然我对python不懂,但是望文生义,您给的这两段代码,一个是提取目录下图片文件名并转换成un ...

这是2段代码,第一段是ruby的伪代码。

第二段的python的,2个是独立的代码。

获取文件夹下的文件列表,each每一个文件,
去掉后4位的名字过去unicode码,hex转16进制,去掉开头2位0x,用u字母拼接,再拼接.bmp。
回复

使用道具 举报

16#
发表于 2020-4-2 14:16:53 | 只看该作者
本帖最后由 slore 于 2020-4-2 17:03 编辑
翅膀 发表于 2020-4-2 14:07
感谢解答,虽然我对python不懂,但是望文生义,您给的这两段代码,一个是提取目录下图片文件名并转换成un ...

把print改成os.system直接执行改名命令。

import os
for file in os.listdir("test"):
    os.system("ren test\\" + file + " u" + hex(ord(file[:-4]))[2:] + ".bmp")



这3行代码是:
直接修改test目录下bmp图片名字的完整代码。
(如有担心,使用前请备份test目录)
回复

使用道具 举报

17#
发表于 2020-4-2 14:22:46 | 只看该作者
PowerShell
应该可以
回复

使用道具 举报

18#
 楼主| 发表于 2020-4-2 14:24:55 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

19#
 楼主| 发表于 2020-4-2 14:25:53 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

20#
 楼主| 发表于 2020-4-2 15:30:57 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

21#
发表于 2020-4-2 16:43:01 | 只看该作者
翅膀 发表于 2020-4-2 15:30
请问,我这么操作是否正确?我把要改名的图片都放在了test目录下,但是在python下运行这三行代码无反应 ...

保存成  name.py,打开后F5运行,或者双击就好了。你这个界面要按回车。
回复

使用道具 举报

22#
 楼主| 发表于 2020-4-2 17:36:31 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

23#
 楼主| 发表于 2020-4-2 17:39:55 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

24#
发表于 2020-4-2 18:00:41 | 只看该作者
本帖最后由 slore 于 2020-4-2 18:02 编辑
翅膀 发表于 2020-4-2 17:39
奇怪,刚刚又操作 了一遍,按f5后,开始报错了。

说了,论坛代码标签有bug,吞掉了一个 斜杠,你再对下我前面写的代码,ren test后面是2个斜杠。

字符串颜色就能看出来。
回复

使用道具 举报

25#
发表于 2020-4-2 19:46:58 | 只看该作者
对于专业要求需要学会编程才好!
回复

使用道具 举报

26#
 楼主| 发表于 2020-4-2 19:53:44 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

27#
 楼主| 发表于 2020-4-2 19:55:17 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

28#
发表于 2020-4-2 21:37:41 | 只看该作者
本帖最后由 slore 于 2020-4-2 21:39 编辑
翅膀 发表于 2020-4-2 19:53
大神,我又重新复制了代码,还是出错,之前用的是3.7的版本,系统是win7,这次换了win10,软件版本换 ...




name.py.txt (120 Bytes, 下载次数: 5)


你是不是文件编码保存的有问题?也可以把你的文件上传,
这个是python的基本命令,和版本系统无关。


>不会编程,永远都是门外汉,遇到啥问题也解决不了,哎。

不用特别深的“编程”,文件操作,数据处理,字符串,Excel等日常,
会点儿脚本语言就方便很多。
回复

使用道具 举报

29#
发表于 2020-4-2 23:30:10 | 只看该作者
#PowerShell后缀名是ps1
#$file.fullname
#$file.name
#代码开始
$hzm="bmp" #后缀名
$files = Get-Childitem -Recurse -Include *.$hzm #遍历bmp
foreach ($file in $files)   #遍历文件
{
$str =  $file.name -replace("\.$hzm","") #获取bmp的名字
$ustr = ""
for($i = 0; $i -lt $str.Length; $i++){
    if([int]$str[$i] -gt 32 -and [int]$str[$i] -lt 127){
        $ustr += $str[$i]
    }
    else{
        $ustr += [System.String]::Format("\u{0:x4}", [int]$str[$i])
    }
}
$ustr= $ustr -replace("\\","") #删除unicode里的\符号
Rename-Item $file.pspath -NewName $ustr".$hzm" #替换文件名
$ustr
}
Start-Sleep -Milliseconds 6000 #等待6秒退出
#代码结束
回复

使用道具 举报

30#
发表于 2020-4-2 23:31:48 | 只看该作者
本帖最后由 黑中见白 于 2020-4-2 23:54 编辑

中文转unicode
是带\符号的,
这个符号,是不能在文件名出现的,
只能进行删除
目前来说,这个转换是单向的.1美女n.bmp
转成
1u7f8eu5973n.bmp
ps1不知道怎么用,
就用这个,保存为cmd格式
bmp格式文件名转换成unicode.cmd
@echo off
rem 开始
powershell -EncodedCommand IwBQAG8AdwBlAHIAUwBoAGUAbABsAA5UAH8NVC9mcABzADEACgAjACQAZgBpAGwAZQAuAGYAdQBsAGwAbgBhAG0AZQAKACMAJABmAGkAbABlAC4AbgBhAG0AZQAKACMA404BeABfy1kKACQAaAB6AG0APQAiAGIAbQBwACIAIAAjAA5UAH8NVAoAJABmAGkAbABlAHMAIAA9ACAARwBlAHQALQBDAGgAaQBsAGQAaQB0AGUAbQAgAC0AUgBlAGMAdQByAHMAZQAgAC0ASQBuAGMAbAB1AGQAZQAgACoALgAkAGgAegBtACAAIwBNkIZTYgBtAHAACgBmAG8AcgBlAGEAYwBoACAAKAAkAGYAaQBsAGUAIABpAG4AIAAkAGYAaQBsAGUAcwApACAAIAAgACMATZCGU4dl9k4KAHsACgAkAHMAdAByACAAPQAgACAAJABmAGkAbABlAC4AbgBhAG0AZQAgAC0AcgBlAHAAbABhAGMAZQAoACIAXAAuACQAaAB6AG0AIgAsACIAIgApACAAIwC3g9ZTYgBtAHAAhHYNVFdbCgAkAHUAcwB0AHIAIAA9ACAAIgAiAAoAZgBvAHIAKAAkAGkAIAA9ACAAMAA7ACAAJABpACAALQBsAHQAIAAkAHMAdAByAC4ATABlAG4AZwB0AGgAOwAgACQAaQArACsAKQB7AAoAIAAgACAAIABpAGYAKABbAGkAbgB0AF0AJABzAHQAcgBbACQAaQBdACAALQBnAHQAIAAzADIAIAAtAGEAbgBkACAAWwBpAG4AdABdACQAcwB0AHIAWwAkAGkAXQAgAC0AbAB0ACAAMQAyADcAKQB7AAoAIAAgACAAIAAgACAAIAAgACQAdQBzAHQAcgAgACsAPQAgACQAcwB0AHIAWwAkAGkAXQAKACAAIAAgACAAfQAKACAAIAAgACAAZQBsAHMAZQB7AAoAIAAgACAAIAAgACAAIAAgACQAdQBzAHQAcgAgACsAPQAgAFsAUwB5AHMAdABlAG0ALgBTAHQAcgBpAG4AZwBdADoAOgBGAG8AcgBtAGEAdAAoACIAXAB1AHsAMAA6AHgANAB9ACIALAAgAFsAaQBuAHQAXQAkAHMAdAByAFsAJABpAF0AKQAKACAAIAAgACAAfQAKAH0ACgAkAHUAcwB0AHIAPQAgACQAdQBzAHQAcgAgAC0AcgBlAHAAbABhAGMAZQAoACIAXABcACIALAAiACIAKQAgACMAIFJklnUAbgBpAGMAbwBkAGUAzJGEdlwAJnv3UwoAUgBlAG4AYQBtAGUALQBJAHQAZQBtACAAJABmAGkAbABlAC4AcABzAHAAYQB0AGgAIAAtAE4AZQB3AE4AYQBtAGUAIAAkAHUAcwB0AHIAIgAuACQAaAB6AG0AIgAgACMA/2ZiY4dl9k4NVAoAJAB1AHMAdAByAAoAfQAKAFMAdABhAHIAdAAtAFMAbABlAGUAcAAgAC0ATQBpAGwAbABpAHMAZQBjAG8AbgBkAHMAIAA2ADAAMAAwACAAIwBJe4VfNgDSeQCQ+lEKACMA404BeNN+X2c=

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2024-4-25 18:15

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表