有时候一个文件中的文本会用gbk或utf-8去解码,获取其中的内容,但是有些utf-8能表示的字符,gbk无法表示,所以这里先把gbk不能表示的字符去除,再将文本解码成utf-8后存储为utf-8字符集格式。
如图:
原理就是利用了encode函数的errors选项,设置errors=‘ignore’,略过错误字符
content=u'\uf0b7\ufeff\uf052\uf0a3汉字'
print(content)
print(content.encode('utf-8'))
print(content.encode('gbk',errors='ignore').decode('gbk').encode('utf-8').decode('utf-8'))