2011-09-20 37 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