“将需要ZIP64扩展名”LargeZipFile:文件大小将需要ZIP64扩展名

问题描述

能帮我解决错误吗?尝试写入大文件时出现错误,有什么办法可以解决错误

File "C:\ProgramData\Anaconda3\lib\zipfile.py",line 1696,in _writecheck
    " would require ZIP64 extensions")

LargeZipFile: Filesize would require ZIP64 extensions

这是堆栈跟踪


  File "<ipython-input-1-211b07c43cd8>",line 1,in <module>
    runfile('C:/Users/Administrator/Desktop/new_paul.py',wdir='C:/Users/Administrator/Desktop')

  File "C:\ProgramData\Anaconda3\lib\site-packages\spyder_kernels\customize\spydercustomize.py",line 786,in runfile
    execfile(filename,namespace)

  File "C:\ProgramData\Anaconda3\lib\site-packages\spyder_kernels\customize\spydercustomize.py",line 110,in execfile
    exec(compile(f.read(),filename,'exec'),namespace)

  File "C:/Users/Administrator/Desktop/new_paul.py",line 106,in <module>
    output_df = gen_stats()

  File "C:/Users/Administrator/Desktop/new_paul.py",line 104,in gen_stats
    return merge_main(all_users)

  File "C:/Users/Administrator/Desktop/new_paul.py",line 99,in merge_main
    all_users.to_excel('main_with_features_300win.xlsx',index=False)

  File "C:\ProgramData\Anaconda3\lib\site-packages\pandas\core\generic.py",line 2127,in to_excel
    engine=engine)

  File "C:\ProgramData\Anaconda3\lib\site-packages\pandas\io\formats\excel.py",line 664,in write
    writer.save()

  File "C:\ProgramData\Anaconda3\lib\site-packages\pandas\io\excel.py",line 1952,in save
    return self.book.close()

  File "C:\ProgramData\Anaconda3\lib\site-packages\xlsxwriter\workbook.py",line 306,in close
    self._store_workbook()

  File "C:\ProgramData\Anaconda3\lib\site-packages\xlsxwriter\workbook.py",line 679,in _store_workbook
    xlsx_file.write(os_filename,xml_filename)

  File "C:\ProgramData\Anaconda3\lib\zipfile.py",line 1743,in write
    with open(filename,"rb") as src,self.open(zinfo,'w') as dest:

  File "C:\ProgramData\Anaconda3\lib\zipfile.py",line 1470,in open
    return self._open_to_write(zinfo,force_zip64=force_zip64)

  File "C:\ProgramData\Anaconda3\lib\zipfile.py",line 1580,in _open_to_write
    self._writecheck(zinfo)

  File "C:\ProgramData\Anaconda3\lib\zipfile.py",in _writecheck
    " would require ZIP64 extensions")

LargeZipFile: Filesize would require ZIP64 extensions

解决方法

初始化class UserLoginSerializer(serializers.Serializer): email = serializers.EmailField() password = serializers.CharField(write_only=True) def validate(self,data): ... # your validate method 时需要传递标记allowZip64=True,以允许它存储大于4GB或大于4GB的文件。

大概这是需要在您使用的实现ZipFile的任何库中修复的问题。您没有在问题中包括该图书馆的身份,因此我们在这里无法与之交谈。

,

基于@Charles Duffy的分析,您可以使用xlsxwriter引擎启用ZIP64扩展,如下所示:

writer = pd.ExcelWriter('pandas.xlsx',engine='xlsxwriter')

df.to_excel(writer,sheet_name='Sheet1')

writer.book.use_zip64()