问题标签 [node-csv-parse]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
391 浏览

node.js - 为什么 CreateReadStream 不触发错误事件?

我正在尝试对 csv 文件进行一些错误处理。当将文件名更改为不存在的名称时,
Error: ENOENT: no such file or directory, open 'testdat.csv'会显示但不会触发 on error 事件。

这是当前的实现:

0 投票
1 回答
495 浏览

node.js - 在不读取整个 Stream 的情况下获取 CSV 标头

我正在使用csv-parser节点模块来捕获流式 csv 文件的标头;我正在使用一个内置在模块中的“标题”事件发射器。

我正在循环通过我的getHeaders()函数传递的一组 csv 读取流。在我捕获流 csv 的标头之后,我想关闭该流,然后将下一个 csv 流传递给函数,以便我可以获取这些标头,然后关闭流,依此类推...

做这个的最好方式是什么?我尝试了几种不同的方法,包括.destroy(),但我还没有找到有效的解决方案。也许我试图在错误的位置关闭流?这是我所拥有的:

0 投票
0 回答
193 浏览

javascript - 在 Javascript 中将一个 CSV 文件转换为另一个文件时,有没有办法指定 UTF8 编码或添加 bom 字符?

我正在使用 csv 模块以及 csv-parse、stream-transform 和 csv-stringify 模块来读取 excel 文件并选择我需要的列。CSV 文件包含无法正确编码的葡萄牙语特殊字符,因为我忽略了 BOM 字符,以便获得正确的列名。我想知道是否有办法将 BOM 字符添加到生成的文件中,以便可以正确编码文件?以下是我用于解析器的选项:

0 投票
1 回答
58 浏览

node.js - 节点。fs.writeFileSync 时获取 [object,Object]

我正在读取一个 csv 文件,然后以我需要的格式编写另一个文件。console.log 显示了我需要的数据,但我创建的文件显示了每一行的 [object, Object]。

我不确定为什么 console.log 显示正确的数据但文件没有。我已经阅读了 Node 文档,但我无法弄清楚这一点。感谢您提供的任何信息。

这就是 console.log 显示的内容

0 投票
0 回答
17 浏览

javascript - 将 csv 文件数据帧推送到数组

我在 Javascript 中完成了这段代码,我想将大学名称从 csv 文件保存到名为 results 的数组中。虽然我可以在函数内部打印值,但当我从函数中打印出来时数组是空的。

0 投票
1 回答
39 浏览

node.js - 在没有循环的情况下使用 csv-parse

我正在使用csv-parse Node 包来解析 CSV 字符串。该文档建议我使用以下内容读取解析结果:

这种方法通过在 while 循环中分配(并具有未命名的函数)来激怒 linting 之神。刚开始也不会让我感觉很好;我觉得某处有一种更简洁易读的方法。

如何在csv-parse不使用 while 循环的情况下从流中填充解析结果?

0 投票
1 回答
875 浏览

node.js - 使用 Node.js 和 csv-parse 在 Google Pub/Sub 中发布多于实际的消息

使用 Node.js、Google Pub/Sub、csv-parse。

用例 - 我有一个大型 csv 文件要处理并导入到我的数据库中。它很少有第三方 API 需要 1 秒来处理每一行。所以流程如下 -

  1. 用户上传文件
  2. 节点服务器上传存储中的文件并向PubSubNo.1发送消息
  3. 现在我的听众听上面的 pubsub 并开始处理这些消息,它下载文件并开始打破每一行并发布到另一个 PubSub 以进行进一步处理
  4. 最后,我并行处理这些较小的行消息并实现更快的处理。

问题 - 只要我的听众下载了文件,它就会发送 x no。到下一个 PubSubNo2 的行消息,但是当我检查它的订阅时,它显示超过 x 条消息。例如,我上传了 6000 条记录 csv 并在订阅者上显示超过 40K-50K 消息。

包.json

发布者代码

并发布模块代码

这对文件 os 10、100,200,2000 记录没有任何问题,但在 6K 记录中会出现更多问题。在我发布 6K 记录后,所有 6K 记录都会出现 UnhandledPromiseRejection 错误,例如

任何帮助表示赞赏!

0 投票
0 回答
56 浏览

node.js - 在 Node js 中使用 csv-parser 获取文件中的原始行

我正在使用 csv-parser ( https://www.npmjs.com/package/csv-parser ) 来解析 CSV 文件,如下所示:

这里每一行的数据都是 JSON 格式的,这很好,因为它很容易获取值等等?在 csv-parser 中是否也可以很容易地获得原始行。如果是这样,我该怎么做?

0 投票
1 回答
574 浏览

javascript - 如何将新日期列填充到现有 CSV 文件

我正在使用 CSV 文件(~20MB)。它具有如下所示的三列,文件名表示开始时间,即第一行的时间戳(在本例中,文件名为20200325131010000.csv)。

连续行的时间戳之间的差异是 20 毫秒。如何有效地将新日期列填充到现有文件中?最终的 CSV 文件应如下所示:

到目前为止,我已经尝试了以下代码:

上面的代码生成以下输出(所有时间戳都相同,这是不可取的):

这段代码的问题在于它20200325131010000向所有行添加了相同的时间戳(即)。如何正确填充时间戳列?

请建议我一种有效的方法来实现这一目标。

0 投票
1 回答
79 浏览

json - 在 React JS 中解析 JSON 并填充到表中

我需要将 CSV 文件解析为 JSON 并将其填充到表中。我使用 PapaParse 将 CSV 解析为 JSON,但 JSON 的某些键之间有一个空格。我需要帮助才能完成后者,但不知道该怎么做。

我的代码是:

JSON的格式是: