2013-02-01 62 views
0

這就是說,pefile python模塊v1.2.8能夠處理unicode字符。 我安裝了1.2.10,但仍然遇到例外情況,當傳送帶有Japanesse文件名的 文件時。我將如何傳遞具有UnicodeCharacters的文件名的PE文件?上述pefle:如何處理unicode文件名

# -*- coding: utf8 -*- 
import pefile 
pe = pefile.PE(str("c:/temp/じゃyそn.exe").decode('utf-8')) 

代碼片段給出了這樣的例外:

UnicodeEncodeError: 'ascii' codec can't encode characters in position 37-194: ordinal 
not in range(128) 

我應該怎樣處理呢? 在此先感謝!

回答

0

str()不是unicode()。 。

前的」嘗試使用一個unicode字節串(注意 'U':

pe = pefile.PE(u"c:/temp/じゃyそn.exe")) 

,然後讀此:

http://www.joelonsoftware.com/articles/Unicode.html

+0

非常感謝! – jaysonpryde

+1

值得關注的是Py3k將字符串對象默認爲Unicode,因此如果您將來使用它,則不必擔心這一點。 –