2014-12-08 3 views
1

У меня есть файл, и я хочу добавить данные в определенное положение на нем.Как добавить файл в определенную позицию с помощью node.js?

Я прошел через http://nodejs.org/api/fs.html#fs_fs_appendfile_filename_data_options_callback, но не смог найти данные о конкретной позиции в файле.

Так что любая помощь будет оценена. Спасибо. !!

+0

вы хотите записать файл. http://nodejs.org/api/fs.html#fs_fs_write_fd_buffer_offset_length_position_callback – dandavis

ответ

3

см это link

С помощью этого вы можете написать в определенную позицию в файле.

Фрагмент кода:

var position = 5; 
var file_path = 'file.txt'; 
var new_text = 'abcde'; 

fs.readFile(file_path, function read(err, data) { 
    if (err) { 
     throw err; 
    } 
    var file_content = data.toString(); 
    file_content = file_content.substring(position); 
    var file = fs.openSync(file_path,'r+'); 
    var bufferedText = new Buffer(new_text+file_content); 
    fs.writeSync(file, bufferedText, 0, bufferedText.length, position); 
    fs.close(file); 
}); 

file.txt должна быть на том же пути.

file.txt уже содержит этот текст: OldText

Выход: Новый текст будет OldTe abcde х т.е., OldTeabcdext

+0

благодарю вас .. но этот код является переопределяющим текстом в файле. Я хочу писать между ними, как вы отображали в качестве вывода в своем ответе. – Divyesh

+0

Вы вручную создали этот файл (** file.txt **) с текстом ** OldText **, а затем запустите этот код? –

+0

Да, я создал его вручную, и вот вывод этого кода «OldTeabcde». Я использовал тот же код, который вы указали в своем ответе. – Divyesh

Смежные вопросы