Конвертировать CSV в JSON с помощью Node.js через C++
Преобразовать CSV в JSON
Aspose.Cells поддерживает преобразование CSV в JSON. Для этого API предоставляет классы ExportRangeToJsonOptions и JsonUtility. Класс ExportRangeToJsonOptions предоставляет параметры экспорта диапазона в JSON. Класс ExportRangeToJsonOptions имеет следующие свойства.
- ExportRangeToJsonOptions.getExportAsString(): Это экспортирует строковое значение ячеек в JSON.
- ExportRangeToJsonOptions.getHasHeaderRow(): Это указывает, содержит ли диапазон заголовок строки.
- ExportRangeToJsonOptions.getIndent(): Указывает отступ.
Класс JsonUtility экспортирует JSON с использованием параметров экспорта, установленных с помощью класса ExportRangeToJsonOptions.
Приведенный ниже образец кода демонстрирует использование классов ExportRangeToJsonOptions и JsonUtility для загрузки исходного файла CSV и печати JSON-вывода в консоль.
Образец кода
const path = require("path");
const AsposeCells = require("aspose.cells.node");
// Source directory
const sourceDir = path.join(__dirname, "data");
const loadOptions = new AsposeCells.LoadOptions(AsposeCells.LoadFormat.Csv);
// Load CSV file
const filePath = path.join(sourceDir, "SampleCsv.csv");
const workbook = new AsposeCells.Workbook(filePath, loadOptions);
const lastCell = workbook.getWorksheets().get(0).getCells().getLastCell();
// Set JsonSaveOptions
const jsonSaveOptions = new AsposeCells.JsonSaveOptions();
const range = workbook.getWorksheets().get(0).getCells().createRange(0, 0, lastCell.getRow() + 1, lastCell.getColumn() + 1);
const data = AsposeCells.JsonUtility.exportRangeToJson(range, jsonSaveOptions);
// Print JSON
console.log(data);
Вывод в консоль
[
{
"id": 1,
"language": "Java",
"edition": "third",
"author": "Herbert Schildt",
"streetAddress": 126,
"city": "San Jone",
"state": "CA",
"postalCode": 394221
},
{
"id": 2,
"language": "C++",
"edition": "second",
"author": "EAAAA",
"streetAddress": 126,
"city": "San Jone",
"state": "CA",
"postalCode": 394221
},
{
"id": 3,
"language": ".Net",
"edition": "second",
"author": "E.Balagurusamy",
"streetAddress": 126,
"city": "San Jone",
"state": "CA",
"postalCode": 394221
}
]