NodeJS:读取一个大的csv文件

Luc*_*non 3 regex json fs readfile node.js

所以我有一个70mb .csv文件,我想要解析并转换为json,尝试在500kb测试csv中进行json转换我发现了一个简单的解决方案与正则表达式.
问题是当我放入我的实际数据时,我不能再使用fs.readFileSync了,所以我需要使用流.
我的问题是:我如何使用流和正则表达式?假设我的流在可能的正则表达式匹配中切断缓冲区,我想如果发生这种情况,我将丢失该数据.此外,数据没有结构化,所以我没有意识到解析它的方式比正则表达式.
如果我不清楚我的解释,请告诉我,英语不是我的主要语言,但我也知道英语社区也是最快也最可靠的.

提前致谢.

rak*_*eng 7

有一个稳定的readline核心模块

你可以做到这一点

let lineReader = require('readline').createInterface({
  input: require('fs').createReadStream('file.csv')
})

lineReader.on('line', (line) => {
  // do regexs with line
})
Run Code Online (Sandbox Code Playgroud)