Node.jsを使用して、ファイルを1行ずつ読み取り、別のファイルに出力しようとしました。
私の問題は、Node.js の非同期性が原因で行のシーケンスが時々めちゃくちゃになることです。
たとえば、私の入力ファイルは次のようになります: 1 行目 2 行目 3 行目
しかし、出力ファイルは次のようになります: 行 1 行 3 行 2
以下は私のコードです。
var fs = require("fs");
var index = 1;
fs.readFileSync('./input.txt').toString().split('\n').forEach(
function (line) {
console.log(line);
fs.open("./output.txt", 'a', 0666, function(err, fd) {
fs.writeSync(fd, line.toString() + "\n", null, undefined, function(err, written) {
})});
}
);
任意の考えをいただければ幸いです、ありがとう。