这个问题我在自己代码中跟中转换编码都不行,总出错!
介绍一种便捷方法,直接改源码:
直接找到zipfile.py文件
第一处:
1 if zinfo.flag_bits & 0x800: 2 # UTF-8 filename 3 fname_str = fname.decode("utf-8") 4 else: 5 # fname_str = fname.decode("cp437") 6 # todo:我添加的 7 fname_str = fname.decode("gbk")
第二处:
1 if flags & 0x800: 2 # UTF-8 file names extension 3 filename = filename.decode('utf-8') 4 else: 5 # Historical ZIP filename encoding 6 # filename = filename.decode('cp437') 7 # todo:我添加的 8 filename = filename.decode('gbk')
完美解决!!!!