firefox (9)、javascript、由于大数据文件而导致分配大小溢出。有什么办法可以避免这种情况吗?

问题描述 投票:0回答:1

我正在开发一个网络应用程序,除其他外,它还执行第一次转换,读取 .csv 文件并转换为 .xml 文件。

我有一个20 mb的文件,处理得很好(所以代码没问题)。

但是我有一个 80 mb 的文件,并且该过程停止并在错误控制台中显示消息

错误:分配大小溢出

并且它指向存储大xml字符串的对象的最后一行。

代码基本上分割了 .csv 文件,每行再次分割该行,然后使用添加到变量的 xml 标签重新构建内容。

然后我假设 80 mb(.csv 文件)的字符串大小对于 Firefox 来说太大了。

我的问题是,我能做些什么吗,比如拆分变量或类似的解决方法?或者这会浪费时间?

谢谢

javascript firefox size overflow allocation
1个回答
0
投票

这个问题看起来很老,但我已经找到了一些解决方案。您可以使用适用于现代浏览器的 URL API。

var file = document.getElementById('video').files[0];
window.URL = window.URL || window.webkitURL;
var video = document.querySelector("#vid");
video.preload = 'metadata';
video.onloadedmetadata = function() {
   window.URL.revokeObjectURL(this.src);
   let time = video.duration;
   console.log(video.duration);
}
video.src = URL.createObjectURL(file);
© www.soinside.com 2019 - 2024. All rights reserved.