2012-08-16 43 views
2

我知道这样的问题,如How to append to a file in Node?追加到一个已经存在的文件nodejs?

但是,那些没有做我所需要的。我所拥有的是在启动nodejs之前已经包含文本的文本文件,然后我希望节点在我的文件末尾添加文本。

但是,在上面链接的问题中使用方法会覆盖我的文件的内容。

我还发现我可以在我的fs.createWriteStream的选项中使用start:number,所以如果我想知道我的旧文件结束的位置,我可以使用它来追加,但是如何在不必读出整个文件并计算其中的字符?

回答

1

我还发现文档混淆,因为它没有告诉你如何实际设置该命令(或者你可能需要在添加之前读入文件)。

这是一个完整的脚本。填写你的文件名并运行它,它应该工作!这是脚本背后的逻辑video tutorial

var fs = require('fs'); 

function ReadAppend(file, appendFile){ 
    fs.readFile(appendFile, function (err, data) { 
    if (err) throw err; 
    console.log('File was read'); 

    fs.appendFile(file, data, function (err) { 
     if (err) throw err; 
     console.log('The "data to append" was appended to file!'); 

    }); 
    }); 
} 
// edit this with your file names 
file = 'name_of_main_file.csv'; 
appendFile = 'name_of_second_file_to_combine.csv'; 
ReadAppend(file, appendFile); 
相关问题