JS宏解析csv

wils
wils

创作者俱乐部成员

昨天论坛里有朋友问,如何快速解析csv文件

于是找到了这个库,宏编辑器导入iife里的sync.js即可

https://github.com/adaltas/node-csv/tree/master/packages/csv-parse/dist/iife


🔔

function tt()

{

const ret = []

for (const f of FileSystem.readdirSync(ThisWorkbook.Path)) {

if (!f.match(/\.csv$/i)) continue

const a = csv_parse_sync.parse(FileSystem.ReadFile(`${ThisWorkbook.Path}\\${f}`))

ret.push(...a)

}

Range('A1').Resize(ret.length, ret[0].length).Value2 = ret

}

写的比较粗,没有文件排序等,只是把30个1000行6列的csv,合并起来写入表格,大概用了3秒


关键的好处是,它可以正确处理双引号里的双引号和逗号

如这种情况a,"b""b,b",c这是3列,第二列是b"b,b


更多的参数和使用方法,可以看官方文档

广东省
浏览 38
收藏
1
分享
1 +1
3
+1
全部评论 3
 
HC.旋
跟着大佬学
· 福建省
回复
 
wils
wils

创作者俱乐部成员

又试了试,如果写入的列多一些,还是很慢,主要是wps写入表格慢。。。 如果只用JS宏处理csv,完成后也是JS宏写入文本,就快很多了
· 广东省
回复
HC.旋
点赞
· 福建省
回复