os.listdir()
读取了大约 1000 个文件名,其中一些以 UTF8 编码,一些是 CP1252。
我想将它们全部解码为 Unicode,以便在我的脚本中进行进一步处理。有没有办法让源编码正确解码为 Unicode?p>
例子:
for item in os.listdir(rootPath):
#Convert to Unicode
if isinstance(item, str):
item = item.decode('cp1252') # or item = item.decode('utf-8')
print item
最佳答案
使用 chardet 库。 super 简单
import chardet
the_encoding = chardet.detect('your string')['encoding']
就是这样!
在 python3 中你需要提供类型 bytes 或 bytearray 所以:
import chardet
the_encoding = chardet.detect(b'your string')['encoding']
关于python - 如何检测字符串字节编码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15918314/