代码如下:
#coding:utf8
import chardet,os
def change2utf8(filename):
'''把filename指定的文件编码改为utf8'''
print 'the file name is %s'%filename
#打开原始文件
inf = open(filename,'r')
#打开一个对应的新文件
of = open(filename+'.utf8','w')
#检测原始文件编码
encoding = chardet.detect(inf.read())
print 'the encoding is %s'%encoding['encoding']
inf.seek(0)
#转码
for line in inf.readlines():
of.write(line.decode(encoding['encoding'],'ignore').encode('utf8'))
of.close()
inf.close()
#删除原始文件
os.remove(filename)
#将新文件重命名
os.rename(filename+'.utf8',filename)