Ответ 1
Вставка данных в середину текстового файла - непростая задача. Если возможно, вы должны добавить его в конец своего файла.
Самый простой способ добавить данные в некоторый текстовый файл - использовать встроенную fs.appendFile(filename, data[, options], callback)
из fs
модуль:
var fs = require('fs')
fs.appendFile('log.txt', 'new data', function (err) {
if (err) {
// append failed
} else {
// done
}
})
Но если вы хотите несколько раз записывать данные в файл журнала, тогда лучше использовать fs.createWriteStream(path[, options])
function:
var fs = require('fs')
var logger = fs.createWriteStream('log.txt', {
flags: 'a' // 'a' means appending (old data will be preserved)
})
logger.write('some data') // append string to your file
logger.write('more data') // again
logger.write('and more') // again
Node будет продолжать добавлять новые данные в ваш файл каждый раз, когда вы вызовете .write
, до тех пор, пока ваше приложение не будет закрыто, или пока вы не закроете поток вручную с помощью .end
:
logger.end() // close string