我想将目录中的mp3文件名从Hex更改为普通char。 问题是我不确定将十六进制转换为新文件名时如何处理''。 我该怎么办?
例如文件名就是这样。
6a6f6e676572656e.mp3
而且,文件名不能包含”,因此我不能这样子...
'6a6f6e676572656e'.mp3
我尝试了以下方法,但是没有用。.
bytes.fromhex("'" + filename[:-4] + "'").decode('utf-8')
这是整个代码。
import os
for filename in os.listdir(r"C:\Users\..."):
os.rename(filename, bytes.fromhex('filename[:-4]').decode('utf-8'))
答案 0 :(得分:0)
不要将字符串作为变量:使用'filename [:-4]':
import os
for filename in os.listdir(r"C:\Users\..."):
os.rename(filename, bytes.fromhex(filename).decode('utf-8'))
如果文件名是十六进制则应该起作用;如果您有一些奇怪的字符,只需使用.replace将其删除