2011-09-20 38 views
0

韩文字符我想在Windows 7中重命名超过100个文件,他们都有韩文/韩文字符的文件。 但os.rename()不适用于这些文件。如何重命名包含在python

WindowsError: [Error 123] The filename, directory name, or volume label syntax is incorrect 

我使用python 2.6.5和os.listdir()来获取文件名,这给了我像???? ??? 021? 061205

回答

0

的Python的哪个版本?

你的语言环境是什么?

您正在使用os.rename(src, dst) ...什么print repr(src)给你一个典型的文件?在Python 3.x中使用print(ascii(src))

过得好src为每个文件?如果它是某种“将我的所有文件都存入some-folder”的小工具,那么您是否提供some-folder作为unicode对象?

更新:事实上,如果你正在做的事情,如:

for filename in os.listdir("C:\\foo\\bar\\baz"): 
    dst = some_func(filename) 
    os.rename(filename, dst) 

你可能喜欢做由os.listdir文档显示和我先前的提示,并尝试这个办法:

for filename in os.listdir(u"C:\\foo\\bar\\baz"): 
    dst = some_func(filename) 
    os.rename(filename, dst) 
+0

使用Python 2.6.5 – vivek

+0

印刷再版(文件名)给出了类似 “???? ??? 021?061205” – vivek

+0

我使用获取文件名os.listdir()。 – vivek