Чтение Int-значений из файла, все в одной строке - PullRequest
2 голосов
/ 19 марта 2019

Я здесь, потому что у меня странная проблема. Я хотел прочитать некоторые значения INT из файла TXT. Все они в одной строке. Чтобы выполнить эту простую задачу, я создал очень простой код node.js:

const readValues = fs.createReadStream(('txt\\' + file[0]));
readValues.setEncoding();                  //It's because I want String here
readValues.on('data', (chunk) => {
    chunk = chunk.trim();
    chunk.split(' ').forEach(value => {
        values.push(parseInt(value, 10));
    });
});

Тогда я получаю это предупреждение

Но когда я добавляю console.log, чтобы показать эти значения в консоли:

const readValues = fs.createReadStream(('txt\\' + file[0]));
readValues.setEncoding();                  //It's because I want String here
readValues.on('data', (chunk) => {
    chunk = chunk.trim();
    chunk.split(' ').forEach(value => {
        console.log(value);    // here
        values.push(parseInt(value, 10));
    });
});

Тогда все эти значения отображаются в консоли, и выше предупреждения здесь нет. Я тестировал также readFileSync:

const readValues = fs.readFileSync(('txt//' + file[0]), 'utf8').trim();
readValues.split(' ').forEach(value => {
    values.push(parseInt(value, 10));
});
//console.log(values);

Но результат обратный - я получаю эту ошибку, когда отображаю эти значения, но когда я не отображаю ее, я не получаю ее: https://imgur.com/a/yehrmX7 Это происходит в LTS-версии узла и в 11.11.0. У меня закончились идеи, и я не нашел никакого решения. Может быть, кто-то из вас знает, где я сделал ошибку? Буду благодарен за помощь.

1 Ответ

0 голосов
/ 29 марта 2019

Проблема заключалась в том, что я инициализировал массивы неправильно.

Я использовал этот способ:

const values = Array.prototype;

И должно быть так:

const values = new Array();

Хорошо, моя вина. Я троллю себя, потому что я хотел создать идеальный код на первом этапе. И я не идеальный человек. Извините, что беспокою вас. Я оставляю здесь ответ на другой вопрос.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...