JSZip 无法解压大文件?

超过1个G的文件解压就会报错,有什么好的解决办法?

<body>
  <input id="uploadFile" type="file" onchange="changeFile()" />
  <script src="https://cdn.bootcdn.net/ajax/libs/jszip/3.10.0/jszip.min.js"></script>
  <script src="https://cdn.bootcdn.net/ajax/libs/FileSaver.js/2.0.5/FileSaver.min.js"></script>
  <script>
    function changeFile() {
      const uploadFileEle = document.querySelector("#uploadFile");
      let file = uploadFileEle.files[0];
      JSZip.loadAsync(file).then((res) => {
        console.log(res.files);
      })
    }
  </script>
</body>

报错信息

1.文件大于1G

jszip.min.js:13 Uncaught (in promise) RangeError: Invalid typed array length: undefined
    at new Uint8Array (<anonymous>)
    at Object.uint8array (jszip.min.js:13:33546)
    at a.transformTo (jszip.min.js:13:34130)
    at jszip.min.js:13:35659

2.文件大于2G

Uncaught (in promise) DOMException: The requested file could not be read, typically due to permission problems that have occurred after a reference to a file was acquired.
阅读 5.7k
推荐问题