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クラスは、ExportRangeToJsonOptionsクラスで設定されたエクスポートオプションを使用してJSONをエクスポートします。
以下のコードサンプルは、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
}
]