Запись в csv файл
Добрый день, сразу хочу сказать, что я далекий от программирования человек, но кровь из носа понадобился простой скрипт, который я и пытаюсь реализовать своими силами.
Мне нужно организовать запись данных в csv файл. Делаю это на node js и использую модуль fast-csv. Как создать и записать данные в файл я разобрался, делаю это таким образом: var ws= fs.createWriteStream('PlayerStats.csv'); csv.write ([ ["Name","Team", "Position","Apps"], [name, team,position,apps] ], {headers:true, delimiter: ';'}) .pipe(ws); А вот добавить новую строку с данными формата [name, team,position,apps] в уже существующий файл с такой информацией никак не выходит. Подскажите, как это реализовать. |
Судя по всему, при открытии потока надо указать режим добавления в конец.
var ws = fs.createWriteStream('PlayerStats.csv', {flags:'a'});Хотя точно опции не знаю. |
Таким образом оно записало в конец последней ячейки.
Если изначально таблица выглядела вот так: Name Team Position COSTA Che FW То при попытке дописать строку (Milner Liverpool DF) с вашим кодом стала вот так: Name Team Position COSTA Che FWMilner Liverpool DF |
Значит надо дописывать '\n' в конце каждой такой операции вручную. Так же можно переопределить pipe. Хотя лучше порыться в доках, наверняка есть опция указывающая что надо в конце дописывать '\n'. Если нет, то можно попросить разработчиков добавить (если проект не заброшен).
|
Часовой пояс GMT +3, время: 16:09. |