我有一個名爲Names.txt的文件;這裏面是一行人名單,由一行隔開。 例如;如何在node.js中的文件的每一行的末尾添加文本?
Joe
Alex
Patricia
Emma
如何在node.js中編輯文件,以便每行添加一個「:lastname」?
我有一個名爲Names.txt的文件;這裏面是一行人名單,由一行隔開。 例如;如何在node.js中的文件的每一行的末尾添加文本?
Joe
Alex
Patricia
Emma
如何在node.js中編輯文件,以便每行添加一個「:lastname」?
你會得到的文件,分割成線,修改這些行,並再次寫入文件
fs.readFile('/path/to/Names.txt', function(err, result) {
if (err) // handle errors
var lines = result.split(/(\n|\r\n)/);
var new_content = lines.map(function(line) {
return line + ' lastname';
}).join("\r\n")
fs.writeFile('/path/to/Names.txt', new_content, 'utf8', function(err) {
if (err) // handle errors
console.log('The file has been saved!');
});
});
這是它的JIST。當然,你可以保留名字和姓氏的地圖,並插入適當的姓氏,或做各種其他的事情,但你仍然必須經歷相同的過程,獲取,換行,修改,加入一起並保存。
這個錯誤,當我登錄「結果」它顯示了一些緩衝區的事情... –
無視我的評論;我添加了'utf8',所以我得到了正確的編碼,它工作。 –
在以前的答案大樓,你會希望通過其實現爲文件路徑後的參數添加UTF8編碼,它應該是這樣的......
fs.readFile('/path/Names.txt', 'utf8', function(err, res) {
if (err) throw err;
var lines = res.split(/\n/);
var new_content = lines.map(function(line) {
return line + ' lastname';
}).join('\n');
fs.writeFile('/path/Names.txt', new_content, 'utf8', function(err) {
if (err) throw err;
console.log('The file has been saved!');
});
});
這應該解決您的問題從讀命令返回緩衝區。
謝謝,但爲什麼呢,當我在記事本中加載文件時,它顯示所有聚集在一起的文本。有什麼我可以做的,以解決這個問題,因爲它搞亂了我的其他腳本逐行獲取它。 –
這可能是因爲記事本不知道如何解釋unix方式中的換行符命令 這是\ n' 在Windows程序中,您需要使用 '\ r \ n' 以獲取完整的回車 –
謝謝,\ r \ n工作。我沒有看到它,因爲你編輯它 –
嗨,你可以舉一個你迄今爲止已經嘗試過的例子,並且有人可能會指出你錯在哪裏。 – Erresen
固定@Errsen。沒有必要大拇指朝下。 –