Javascript 处理字段中带换行符的csv文件-node.js
我正在尝试处理字段中有换行符(\n)的csv文件。每个字段都用双引号括起来。是否有任何node.js包可以处理这种类型的csv 我试着用节点中的readline解析它。它将行检测为单独的记录,即使它们位于同一字段中。可以处理包含换行符的行:Javascript 处理字段中带换行符的csv文件-node.js,javascript,arrays,node.js,parsing,npm,Javascript,Arrays,Node.js,Parsing,Npm,我正在尝试处理字段中有换行符(\n)的csv文件。每个字段都用双引号括起来。是否有任何node.js包可以处理这种类型的csv 我试着用节点中的readline解析它。它将行检测为单独的记录,即使它们位于同一字段中。可以处理包含换行符的行: 'use strict' let csv = require('csv'); let str = `id;name;desc "1";"name1";"desc on multiple line" "2";"name2";"desc2"`; csv.p
'use strict'
let csv = require('csv');
let str = `id;name;desc
"1";"name1";"desc
on multiple
line"
"2";"name2";"desc2"`;
csv.parse(str,
{
delimiter: ';', // default is ,
columns: true, // if the first of the csv line is headers
},
(err, data) => {
if (err) console.log(err);
console.log(JSON.stringify(data, null, 3));
});
/* output:
[
{
"id": "1",
"name": "name1",
"desc": "desc\non multiple\nline"
},
{
"id": "2",
"name": "name2",
"desc": "desc2"
}
]
*/
/* without column: true
[
[
"id",
"name",
"desc"
],
[
"1",
"name1",
"desc\non multiple\nline"
],
[
"2",
"name2",
"desc2"
]
]
*/
您尝试过json-2-csv吗?只是想澄清一下,分隔符在您的csv中实际上是逗号吗?是的,是逗号分隔的csv。所有字段都用引号括起来。这里的输出是一个JSON对象数组。我发现“FastCSV”是另一个可以处理此类csv的软件包。它支持以字符串数组的形式输出,这是我想要的格式。@AthulJayson,如果您删除
列:true
(或将其设置为false
),csv
还提供字符串数组数组。我用不带列的输出更新了答案:true
。