我有一个要遍历的数据数组,在遍历时我想将它们写入同一文件。我如何能达到同样的效果,我的以下代码将只显示最后一次迭代。
for (j = 0; j < arrayPart.length; j++){
fs.writeFileSync('message.txt', arrayPart[j])
}
message.txt
的最后一个值为arrayPart
。
答案 0 :(得分:2)
只需join
数组,然后一次写入文件:
fs.writeFileSync('message.txt', arrayPart.join(""));
答案 1 :(得分:2)
我不是打开/写入/关闭每次迭代,而是打开一个写流,在循环内部写入并在最后关闭:
const message = fs.createWriteStream(__dirname + "./message.txt");
for (let j = 0; j <arrayPart.length; j++){
message.write(arrayPart[j]);
}
message.close();
或者您只是加入数组并一次写入所有内容:
fs.writeFileSync('message.txt', arrayPart.join(""));