繁体   English   中英

使用csv-parse包Node.js解析csv

[英]Parse csv with csv-parse packages Node.js

我用fs包读取了csv文件,并使用csv-parse解析了结果。 结果是这样的数组:

[ [ 'nama_venue\tketerangan' ],
  [ 'Ruang Kelas A1.1\truang_kelas' ],
  [ 'Ruang Kelas A1.2\truang_kelas' ],
  [ 'Ruang Kelas A1.3\truang_kelas' ],
  [ 'Ruang Kelas A1.4\truang_kelas' ],
  [ 'Ruang Kelas A1.5\truang_kelas' ],
  [ 'Ruang Kelas A1.6\truang_kelas' ],

当我想将该数据插入db时出现问题。 Coz mysql程序包要求在我的数组中使用[[a, b], [b, c]]这样的数组[[a, b], [b, c]]而不是[[a\\tb],[b\\tc]] 怎么做谢谢。

假设您的数组称为array ,请使用:

array.map(a => a.map(s => s.replace('\t', '')))

例:

 const array = [[ 'nama_venue\\tketerangan' ], [ 'Ruang Kelas A1.1\\truang_kelas' ], [ 'Ruang Kelas A1.2\\truang_kelas' ], [ 'Ruang Kelas A1.3\\truang_kelas' ], [ 'Ruang Kelas A1.4\\truang_kelas' ], [ 'Ruang Kelas A1.5\\truang_kelas' ], [ 'Ruang Kelas A1.6\\truang_kelas' ]] const array2 = array.map(a => a.map(s => s.replace('\\t', ''))) console.log(array2) 

看起来您的csv解析器正确解析了换行符,但制表符分隔符却不正确。 你可以做:

parser(data, { delimiter : '\\t' })

根据文档:

http://csv.adaltas.com/parse/

设置字段定界符。 仅一个字符。 默认为“,”(逗号)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM