2013-06-26 82 views
11

如何在文件中添加文本但不覆蓋舊文本。我使用模塊FS(節點JS)在文本文件中寫入而不覆蓋在fs節點js

我試過這段代碼,但它不起作用。

fs.writeFileSync("file.txt", 'Text', "UTF-8",{'flags': 'w+'}); 

任何建議和謝謝。

+0

我知道這個問題已經得到解答,但如果有人需要更多關於如何讀/寫節點文件的信息,請查看本教程:http://4dev.tech/2015/09/node- js-tutorial-reading-and-writing-files/ –

回答

13

檢查這裏的標誌:http://nodejs.org/api/fs.html#fs_fs_open_path_flags_mode_callback - 您當前正在使用w+其中:

'W +' - 爲讀寫打開文件。該文件被創建(如果它不存在)或截斷(如果它存在)。

您應該使用a代替:

'一' - 爲追加打開文件。如果該文件不存在,則會創建該文件。

'ax' - 與'a'相似,但以獨佔模式打開文件。

'a +' - 打開文件供閱讀和追加。如果該文件不存在,則會創建該文件。

'ax +' - 和'a +'一樣,但以獨佔模式打開文件。

+4

+1 APPENDEMONIUM。 – naomik

+1

感謝您UR答案, 我找到了解決辦法, 我用這個代碼: 'fs.appendFileSync( 「file.txt的」, '我的文字\ n', 「UTF-8」,{ '標誌' :'a +'});' – Fox

+1

@ user2513289如果這個答案回答了你的問題,你應該標記它 – Prisoner

2

使用fs.appendFile,它會追加新的信息!

fs.appendFile("file.txt", 'Text',function(err){ 
if(err) throw err; 
console.log('IS WRITTEN') 
}); 
相關問題