Discord Bot (node.js ): считывает данные из внешнего файла

#node.js #discord #discord.js

#node.js #Discord #discord.js

Вопрос:

Я настроил своего БОТА discord с помощью node.js . Для моего преимущества мне нужно было бы сохранить некоторые данные во внешнем файле, но, похоже, я не могу получить к ним доступ со своего index.js файл (основной файл бота). Я пытался использовать один статический массив во внешних файлах js / json, но я могу получить только неопределенные / пустые значения. Кроме того, когда я попытался использовать текстовый файл, после извлечения содержимого я обнаружил, что он не может вызывать такие функции, как string.split() .

Возможно, я что-то пропустил в содержимом пакета?

Комментарии:

1. Мы не сможем вам помочь, пока вы не покажете нам код, который вы пробовали.

2. Если вы хотите рассмотреть возможность использования отдельного файла, JSON , возможно, сможет вам в этом помочь. Немного сложно понять, что вы пытаетесь сделать, поэтому отредактируйте свой вопрос и добавьте немного кода.

3. Мне нужно всего лишь сохранить список предопределенных ответов бота, поэтому я попробовал еще раз с простым файлом .txt и разделением строк, и это сработало. Сейчас я выгляжу тупым, но, клянусь, вчера моя консоль выдавала мне странные ошибки, такие как TypeError: text.split() is not a function

4. Вероятно, потому, что это была не строка. .split(); может возвращать подобную ошибку, если то, с чем вы пытаетесь это сделать, не является строкой.

Ответ №1:

Предполагая, что данные, которые вы сохраняете, находятся в кодировке UTF-8:

 var fs = require('fs');

fs.readFile('path/to/file', 'utf8', function(err, contents) {
    // code using file data
});
  

При условии отсутствия ошибок содержимое будет представлять собой строку данных, которые находятся внутри этого файла.

https://code-maven.com/reading-a-file-with-nodejs

Комментарии:

1. Я собирался опубликовать часть своего кода, но этот фрагмент работает как шарм с файлом .txt, разделяя строки. Большое спасибо!