Я использую csv-write-stream для создания и добавления данных в CSV в проектах nodejs и electronicjs.
Есть ли способ заставить его всегда использовать двойные кавычки вокруг каждой записи каждой строки? Итак, строка будет выглядеть примерно так:
"2018-12-31","Bob","Jones"
Мой текущий рабочий код (без двойных кавычек) такой:
const fs = require('fs');
var csvWriter = require('csv-write-stream');
var writer = csvWriter({sendHeaders: false}); //Instantiate var
var csvFilename = "C:\some\path\myfile.csv";
// If CSV file does not exist, create it and add the headers
if (!fs.existsSync(csvFilename)) {
writer = csvWriter({sendHeaders: false});
writer.pipe(fs.createWriteStream(csvFilename));
writer.write({
header1: 'DATE',
header2: 'LASTNAME',
header3: 'FIRSTNAME'
});
writer.end();
}
// Append some data to CSV the file
writer = csvWriter({sendHeaders: false});
writer.pipe(fs.createWriteStream(csvFilename, {flags: 'a'}));
writer.write({
header1: '2018-12-31',
header2: 'Smith',
header3: 'John'
});
writer.end();
Будет выведена строка, которая выглядит следующим образом, без двойных кавычек:
2018-12-31,Bob,Jones
Если вы вручную попытаетесь добавить двойные кавычки к данным, тогда csv-write-stream фактически обернет данные в двойные кавычки, так что вы получите следующее:
"""2018-12-31""","""Bob""","""Jones"""