【发布时间】:2017-08-07 12:20:21
【问题描述】:
我的服务器上目前有一堆巨大的 CSV 文件(其中一个超过 3 GB),我需要对其进行解析并在模板上显示。由于这看起来像 JavaScript 的东西,我查看了PapaParse,但似乎我必须将File 对象传递给PapaParse 的parse 函数。那个File 对象的Mozilla link 表示这些类型的对象是在用户上传某些文件时创建的,或者来自HTML5 Canvas 元素。但我不想那样。该文件已经在我的服务器上,我只需要通读它并以表格格式显示内容。
我尝试了从 Django 简单地解析整个文件并将其传递给模板中的 AJAX 回调的手动方法,但浏览器冻结了,我不得不重新启动服务器。
【问题讨论】:
-
您将无法以这种方式完整地处理 3GB 文件。想一想:要做到这一点,你的 Django 代码必须消耗整个 3GB 的数据,做它必须做的任何事情(可能在内存中,除非你正在做任何事情来阻止它),然后将整个 3GB 发送到客户端,它必须再次在内存中处理。浏览器死机应该不足为奇!我非常怀疑您是否需要一次显示整个 3GB 数据。您在这里的实际目标是什么?
-
@Chris - 目标是在表格中显示内容。一次可能有 50 行。
标签: javascript django csv papaparse