1.0.1 • Published 5 years ago
csv2arrs v1.0.1
CSV文件转化为二维数组
示例代码
const { csv2arr, MAX_ARR_LEN } = require('csv2arrs')
async function test () {
const filename = './test.csv'
const maxArrLen = MAX_ARR_LEN
let startRows = -1
let { data: reply, readSize } = await csv2arr(filename, { maxArrLen, startRows, startSize: 0 })
startRows += reply.length
let allLen = reply.length
// 此处做循环,是csv的行数大于MAX_ARR_LEN
while (reply.length === maxArrLen) {
// ...
// ... 此处理二维数组reply
// ...
// 下次获取数据时,先将reply清空,大文件容易报内存溢出bug
reply.splice(0)
const _a = await csv2arr(filename, { maxArrLen, startRows, startSize: readSize })
reply = _a.data
readSize = _a.readSize
allLen += reply.length
startRows += reply.length
}
// 测试文件的总行数为:12598340
// 输出结果:12598339 12598340
console.log(startRows, allLen)
}
test().catch(err=>{
console.error(err)
})