Я хочу, чтобы кодировать CSV файл из ASCII в кодировке UTF8, и это код, который я попробовал:закодировать файл из ASCII в UTF8
import codecs
import chardet
BLOCKSIZE = 9048576 # or some other, desired size in bytes
with codecs.open("MFile2016-05-22.csv", "r", "ascii") as sourceFile:
with codecs.open("tmp.csv", "w", "utf-8") as targetFile:
while True:
contents = sourceFile.read(BLOCKSIZE)
if not contents:
break
targetFile.write(contents)
file = open("tmp.csv", "r")
try:
content = file.read()
finally:
file.close()
encoding = chardet.detect(content)['encoding']
print encoding
После тестирования, я все еще получаю «ASCII» в значение кодирования. Кодировка не изменилась. Что мне не хватает?
Любой файл ASCII уже действует UTF -8. Фактически, он действителен практически во всех кодировках (которые основаны на ASCII). – deceze