Konvertieren von CSV in JSON
Konvertieren von CSV in JSON
Aspose.Cells unterstützt die Konvertierung von CSV in JSON. Dafür bietet die API die Klassen ExportRangeToJsonOptions und JsonUtility. Die Klasse ExportRangeToJsonOptions bietet Optionen für den Export des Bereichs in JSON. Die Klasse ExportRangeToJsonOptions hat die folgenden Eigenschaften.
- ExportAsString: Exportiert den Zeichenfolgenwert der Zellen in JSON.
- HasHeaderRow: Gibt an, ob der Bereich eine Kopfzeile enthält.
- Indent: Gibt die Einrückung an.
Die Klasse JsonUtility exportiert das JSON unter Verwendung der Exportoptionen, die mit der Klasse ExportRangeToJsonOptions festgelegt sind.
Der folgende Codeausschnitt zeigt die Verwendung der Klassen ExportRangeToJsonOptions und JsonUtility zum Laden der Quell-CSV-Datei und zum Ausgeben des JSONs in die Konsole.
Beispielcode
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
//Source directory | |
String sourceDir = Utils.Get_SourceDirectory(); | |
LoadOptions loadOptions = new LoadOptions(LoadFormat.CSV); | |
// Load CSV file | |
Workbook workbook = new Workbook(sourceDir + "SampleCsv.csv", loadOptions); | |
Cell lastCell = workbook.getWorksheets().get(0).getCells().getLastCell(); | |
// Set ExportRangeToJsonOptions | |
ExportRangeToJsonOptions options = new ExportRangeToJsonOptions(); | |
Range range = workbook.getWorksheets().get(0).getCells().createRange(0, 0, lastCell.getRow() + 1, lastCell.getColumn() + 1); | |
String data = JsonUtility.exportRangeToJson(range, options); | |
// Print JSON | |
System.out.println(data); |
Konsolenausgabe
[
{
"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
}
]