python改变文件的编码格式

你离开我真会死。 提交于 2020-12-15 08:36:58
1 def change_file_code(coding,files_name):
2     try:
3         cache_data = linecache.getlines(files_name)
4         with open(files_name, 'wb') as out_file:
5             for line in range(len(cache_data)):
6                 out_file.write(cache_data[line].encode(coding))
7     except Exception as e:
8         print(str(e))

由于文件涉及到windows的 CRLF 以及unix的LF问题,使用rb+会导致修改过的文件存在数据换行错误问题,使用wb则不会出现这样情况。具体原因待考证。

注:不建议使用此处的linecache 。使用linecache须在文件头注明文件编码格式:coding = utf-8

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!