Исходя из того, что я прочитал здесь , я использую fs.createWriteStream
для записи некоторого JSON в файл.Я обрабатываю данные порциями по 50. Итак, в начале скрипта я открываю свой strea и затем использую функцию для его передачи вместе с некоторым JSON, который довольно хорошо работает для записи.
const myStream = fs.createWriteStream(
path.join(RESULTS_DIR, `my-file.json`),
{
flags: 'a'
}
)
function appendJsonToFile(stream, jsonToAppend) {
return new Promise((resolve, reject) => {
try {
stream.write(JSON.stringify(jsonToAppend, null, 2)
resolve('STREAM_WRITE_SUCCESS')
} catch (streamError) {
reject('STREAM_WRITE_FAILURE', streamError)
}
})
}
appendJsonToFile(myStream, someJson)
Однако, поскольку каждый фрагмент данных, который должен быть записан, представляет собой массив объектов, структура, которую я в конечном итоге получу в своем файле, будет выглядеть следующим образом:
[
{
"data": "test data 1",
},
{
"data": "test data 2",
}
][
{
"data": "test data 3",
},
{
"data": "test data 4",
}
]
Как я могу добавить эти фрагменты данныхчтобы результат был правильно отформатирован в формате JSON, а не просто в виде серии массивов?