[英]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' })
根据文档:
设置字段定界符。 仅一个字符。 默认为“,”(逗号)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.