最近手头要做一下文本过滤的相关,于是涉及到这个问题。因为用到wordmaker来生成字典,但是呢,wordmaker的input file目前只支持gbk编码。所以,做的时候就遇到了文件编码转换的问题。
最初的解决方法是直接指定文件的编码,open(file_name, 'w', encoding='gbk'),随手跑了下发现可以的。但是跑全量的时候挂掉了,然后回头看的时候,发现有些数据里面不仅包含中文,还有其他非中文的字符,然后就网上各种找,发现了这个:
编码名称 | 用途 |
utf8 | 所有语言 |
gbk | 简体中文 |
gb2312 | 简体中文 |
gb18030 | 简体中文 |
big5 | 繁体中文 |
big5hkscs | 繁体中文 |
dat = data.encode('gbk', errors='ignore').decode('gbk')