fs.readFile не выводит json
Есть файл users.json в котором хранятся данные локальных пользователей. Нужно было что бы при изменении каких то данных в нем при помощи fs.writeFile() файл автоматически обновлялся. Для это использовал require(), но понял что через него скорее всего ничего не смогу сделать. Решил использовать fs.readFileSync() на выходе получал Buffer, а через fs.readFile() получал undefined.
Нужно как то заставить файл данных обновляться при использовании программы, написать функцию.
Вот пример обьекта пользователя:
username: {
password: String,
root: Boolean
}
Ответы (1 шт):
Автор решения: SwaD
→ Ссылка
При записи данных можно передавать либо Buffer либо string.
Ниже пример записи и чтения файла(node -v -> 14.17)
import fs from 'fs';
const x = {
name: '123',
data: '456'
}
fs.writeFile('temp.json', JSON.stringify(x), { encoding: 'utf8' }, () => {
console.log('Файл сохранен')
});
fs.readFile('temp.json', (err, data) => {
console.log(1, data); // Будет Buffer
console.log(2, JSON.parse(data)); // Будет исходный объект
})