Чтение файла в Javascript в узле

Я просто пытаюсь прочитать текстовый файл в Node. Я не в ДОМ.

Я могу писать в файл с этим пакетом, но у меня проблемы с чтением из него.

Я знаю, что мне нужно следующее:

var fs = require('fs');

var readStream = fs.createReadStream('my_file.txt');

Но readStream — это сложный объект. Я просто хочу, чтобы переменная была строкой. Любые идеи?


person Rabbitshoe    schedule 29.04.2015    source источник


Ответы (1)


Если это файл, почему бы вам не использовать fs.readFile, предназначенный для чтения файлов

fs.readFile('my_file.txt', {encoding : 'utf8'}, function (err, data) {
    if (err) throw err;

    var fileContent = data;
});

Доступна даже синхронная версия, которую обычно не следует использовать.

var fileContent = fs.readFileSync('my_file.txt', {encoding : 'utf8'});
person adeneo    schedule 29.04.2015
comment
Следует отметить, что если вы планируете читать несколько файлов одновременно (например, в ответ на запрос), вы можете получить более эффективное использование, используя fs.createReadStream(...) и обрабатывая файл с помощью потокового API. Хотя более удобно, fs.readFile() будет буферизовать весь файл в памяти. - person ctt; 30.04.2015