我经常发现自己在读取一个大的 JSON 文件(通常是一个对象数组),然后操作每个对象并写回一个新文件。
为了在 Node 中实现这一点(至少是读取数据部分),我通常使用 stream-json 模块来做这样的事情。
const fs = require('fs');
const StreamArray = require('stream-json/streamers/StreamArray');
const pipeline = fs.createReadStream('sample.json')
.pipe(StreamArray.withParser());
pipeline.on('data', data => {
//do something with each object in file
});
Run Code Online (Sandbox Code Playgroud)
我最近发现了 Deno,并且希望能够使用 Deno 完成这个工作流程。
看起来标准库中的readJSON方法将文件的全部内容读入内存,所以我不知道它是否适合处理大文件。
有没有一种方法可以通过使用 Deno 中内置的一些较低级别的方法从文件中流式传输数据来完成?
deno ×1