Python:将utf-8格式的文件转换成gbk格式的文件
需求:将utf-8格式的文件转换成gbk格式的文件 实现代码如下: def ReadFile(filePath,encoding="utf-8"): with codecs.open(filePath,"r",encoding) as f: return f.read() def WriteFile(filePath,u,encoding="gbk"): with codecs.open(filePath,"w",encoding) as f: f.write(u) def UTF8_2_GBK(src,dst): content = ReadFile(src,encoding="utf-8") WriteFile(dst,content,encoding="gbk") 代码讲解: 函数ReadFile的第二个参数指定以utf-8格式的编码方式读取文件,返回的结果content为Unicode 然后,在将Unicode以gbk格式写入文件中。 这样就能实现需求。 但是,如果要转换格式的文件中包含有一些字符并不包含在gbk字符集中的话,就会报错,类似如下: UnicodeEncodeError: 'gbk' codec can't encode character u'\xa0' in position 4813: illegal multibyte sequence