问题标签 [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 回答
329 浏览

javascript - 将 CSV 中的数据保存在全局变量中(fast-csv/papaparse)

我是 js 新手,并尝试使用 node.js 在后端解析 CSV。

我有一个状态数组,我想在其中存储 CSV 列的数据。这是我使用 fast-csv 编写的一个非常简单的代码。但是每当我运行代码时,我都会得到一个空数组 [] 。我尝试使用 papaparse 做同样的事情并得到相同的结果。

但是,每当我通过控制台登录时, .on('end') 块都会记录这些值。

我认为这是由于解析器异步工作。我试图解决承诺并使用 async/await 方法,但我无法在全局范围内使用已解析的内容。

希望对此有所帮助。

0 投票
2 回答
42 浏览

javascript - 无法访问对象中的特定键

我在 node.js(同步 api)中使用 csv-parse 将 csv 解析为 js 对象。一切都很好,除了我在访问第一个键值对时遇到了很多麻烦。

如果我控制台记录我得到的结果对象

试图访问 PlayerName 我得到未定义,我假设因为 PlayerName 在引号中(此对象由 csv-parse 生成)。scorecard.PlayerName 和 scorecard['PlayerName'] 不起作用。但是,如果我使用..

我确实得到了 Par 的预期结果。

0 投票
1 回答
313 浏览

javascript - 使用nodejs中的csv-parse模块忽略引号内的内容

我正在尝试编写一个 csv 解析器来处理一些非常复杂的数据,但我无法让csv-parse模块忽略引号内的分隔符。除了双引号本身之外,我无法控制数据的来源,所以我无法真正使用转义字符来解决它。解析器首先使用“|”解析行,然后是“@”,然后是“;”。

这是我正在尝试处理的数据示例:

目前,由于“|”,我正在训练栏目上休息 在“@”之后的“01|0009”。

这是解析器的代码:

这就是我使用它的方式:

这是来自模块的错误:

如您所见,当它应该解析 2 时,它正在解析三列。

我怎样才能让它忽略双引号内的内容?

0 投票
2 回答
43 浏览

javascript - 从 csv 添加数字

我正在尝试将列中的所有数字添加到变量中。问题是我的代码正在将结果添加到 NaN 中。

给我:“0Daily Device Installs00001000101100”,如果我添加 parseInt(csvrow[2]) 我将得到 NaN 进行测试。

我的目标是在每日设备安装后添加所有数字,我错过了什么?

0 投票
1 回答
57 浏览

node.js - 如何使用 node.js 顺序读取 csv 文件(使用流 API)

我试图弄清楚如何创建一个流管道,它按需读取 csv 文件中的条目。为此,我想到了使用管道的以下方法(伪代码)

不幸的是,经过大量测试后,我发现它们在我设置管道的那一刻,它会自动消耗,直到 csv 文件结束。我试图通过.pause()在最后附加来暂停它的创建,但它似乎没有任何效果。

这是我当前的代码。我正在使用csv_parse库(较大csv包的一部分):

我一直在努力解决这个问题,但在 csv 包和节点官方文档中都找不到简单的解决方案。

提前感谢任何能让我走上正轨的人:)

0 投票
1 回答
37 浏览

javascript - 在节点js中解析数据时,无法在将标头发送到客户端后设置标头

我正在使用 csv 解析器读取 csv 文件并将接收到的 csv 文件数据传递给 ejs 模板文件进行打印,因此数据为对象格式,因此我使用了 stringyfy 但因此出现错误。

错误:

节点js代码

在 ejs 模板文件中打印数据的代码: