json文件的保存,当遇到bytes格式无法序列化的问题解决方法

时间:2018-12-07 20:29:51   收藏:0   阅读:304
class MyEncoder(json.JSONEncoder):
    def default(self, obj):
        try:
            if isinstance(obj, bytes):
                return str(obj, encoding=‘utf-8‘)
            return json.JSONEncoder.default(self, obj)
        except UnicodeDecodeError:
            pass
    

def save_file(data):
        with open(‘regedit.json‘, ‘r‘, encoding=‘utf-8‘) as f:
            origin = json.load(f)
        origin.append(data)
        with open(‘regedit.json‘, ‘w‘, encoding=‘utf-8‘) as f:
            json.dump(origin, f, cls=MyEncoder, ensure_ascii=False)

  

原文:https://www.cnblogs.com/caozhi00/p/10084271.html

评论(0
© 2014 bubuko.com 版权所有 - 联系我们:wmxa8@hotmail.com
打开技术之扣,分享程序人生!