Convertir JSON a CSV con JavaScript vía C++
Contents
[
Hide
]
Convertir JSON a CSV
Aspose.Cells for JavaScript vía C++ soporta la conversión de JSON simple y anidado a CSV. Para esto, la API proporciona las clases JsonLayoutOptions y JsonUtility. La clase JsonLayoutOptions ofrece las opciones de formato para JSON como JsonLayoutOptions.arrayAsTable (procesa el array como una tabla). La clase JsonUtility procesa el JSON usando las opciones de formato establecidas con la clase JsonLayoutOptions.
El siguiente ejemplo de código demuestra el uso de las clases JsonLayoutOptions y JsonUtility para cargar el archivo JSON fuente y genera el archivo CSV de salida.
Código de muestra
<!DOCTYPE html>
<html>
<head>
<title>Aspose.Cells JSON to CSV Example</title>
</head>
<body>
<h1>Import JSON to CSV Example</h1>
<input type="file" id="fileInput" accept=".json" />
<button id="runExample">Run Example</button>
<a id="downloadLink" style="display: none;">Download Result</a>
<div id="result"></div>
</body>
<script src="aspose.cells.js.min.js"></script>
<script type="text/javascript">
const { Workbook, SaveFormat, JsonLayoutOptions, JsonUtility, Utils } = AsposeCells;
AsposeCells.onReady({
license: "/lic/aspose.cells.enc",
fontPath: "/fonts/",
fontList: [
"arial.ttf",
"NotoSansSC-Regular.ttf"
]
}).then(() => {
console.log("Aspose.Cells initialized");
});
document.getElementById('runExample').addEventListener('click', async () => {
const fileInput = document.getElementById('fileInput');
const resultDiv = document.getElementById('result');
if (!fileInput.files.length) {
resultDiv.innerHTML = '<p style="color: red;">Please select a JSON file.</p>';
return;
}
const file = fileInput.files[0];
const jsonText = await file.text();
// Create empty workbook
const workbook = new Workbook();
// Get Cells from first worksheet
const cells = workbook.worksheets.get(0).cells;
// Set JsonLayoutOptions
const importOptions = new JsonLayoutOptions();
importOptions.convertNumericOrDate = true;
importOptions.arrayAsTable = true;
importOptions.ignoreTitle = true;
// Import JSON data into worksheet cells starting at A1 (0,0)
JsonUtility.importData(jsonText, cells, 0, 0, importOptions);
// Save Workbook as CSV
const outputData = workbook.save(SaveFormat.Csv);
const blob = new Blob([outputData]);
const downloadLink = document.getElementById('downloadLink');
downloadLink.href = URL.createObjectURL(blob);
downloadLink.download = 'SampleJson_out.csv';
downloadLink.style.display = 'block';
downloadLink.textContent = 'Download CSV File';
resultDiv.innerHTML = '<p style="color: green;">JSON imported and CSV prepared. Click the download link to get the CSV file.</p>';
});
</script>
</html>