我遇到了一个问题,转换大XLSX这是超过600 MB的CSV。事情是,与较小的文件(〉3 MB)它的罚款,但当谈到大文件,然后我可以看到它是如何吃掉整个内存,然后只是创建一个空的测试.csv文件。
到目前为止,我使用了以下模块:节点-xlsx
我遵循以下指南:Convert XLS to CSV on the server in Node
我遇到了一个问题,转换大XLSX这是超过600 MB的CSV。事情是,与较小的文件(〉3 MB)它的罚款,但当谈到大文件,然后我可以看到它是如何吃掉整个内存,然后只是创建一个空的测试.csv文件。
到目前为止,我使用了以下模块:节点-xlsx
我遵循以下指南:Convert XLS to CSV on the server in Node
2条答案
按热度按时间jmo0nnb31#
您正在遵循的指南适用于较小的文件。然而XLSX是最著名的一个。
但是,由于节点RAM使用的限制,对于大文件也会失败。
您可以增加允许的RAM--max_old_space_size=4096,其中4096=4GB
nbysray52#
我的大表不工作的主要问题是我升级到
node: v14.17.0 (with npm 6.14.13)
后使用的是node: v7.10.1 (with npm 4.2.0)
,我在运行节点脚本时也使用了--max-old-space-size=4096
。∮ ∮ ∮ ∮
我只是在SheetJS因为较大的工作表而没有输出数据之后才开始使用这个解决方案。我将这个解决方案与PapaParse一起使用,因为我发现它很容易使用。
∮ ∮ ∮ ∮
我仍然包括这个解决方案,因为它工作得很好,直到问题与更大的表,我也喜欢它有CLI命令。
用于将excel转换为CSV的CLI命令:
在节点中执行相同操作的代码