错误json.decoder.JSONDecodeError: Unexpected UTF-8 BOM的原因

近期在训练模型时偶然遇到了这个问题,当读json文件时,跳出如下错误

 问题原因是用txt文件修改后缀产生的json文件,而且在修改后缀前打开过txt文件并添加了内容,由于txt开头会产生BOM字符用于识别文本的编码方式,这个字符会导致上述错误,因此需要去掉这个字符。

有2种方法可以避免上述错误:

1,使用notepad打开文件,在菜单中找到编码,选择UTF-8编码,然后保存即可

2,已经存在BOM的情况下可以去除该字符

content = content.encode('utf8')[3:].decode('utf8')

 

posted @ 2020-09-03 11:40  btc  阅读(3265)  评论(0编辑  收藏  举报