MS Excelは、ワークブックに含まれるワークシートの形式でデータを保持および整理するためのさまざまな機能を提供します。データ編成に加えて、並べ替え、データの視覚化、数学的計算などを実行できます。場合によっては、JSON形式でデータを受け取り、プログラムでExcelワークシートにエクスポートする必要があります。このような場合、この記事では、Node.jsでJSONデータをExcel XLSX/XLSに変換する方法について説明します。
JSONからExcelへの変換のためのNode.jsAPI
Java経由のNode.js用Aspose.Cellsは、Node.jsアプリケーションでExcelファイルを作成、変更、または変換できる強力なAPIです。このAPIを使用して、JSONからExcelワークシートにデータをインポートします。 APIのパッケージをダウンロードするか、次のNPMコマンドを使用してインストールできます。
> npm install aspose.cells
Node.jsでJSONをExcelに変換する
以下は、Node.jsでJSONをExcelに変換する手順です。
- 新しいWorkbookオブジェクトを作成します。
- Workbook.getWorksheets().get(0)メソッドを使用して、最初のワークシートの参照を取得します。
- JsonLayoutOptionsクラスのオブジェクトを作成して、追加のオプションを設定します。
- JsonUtility.importData()メソッドを使用してJSONからExcelにデータをインポートします。
- Workbook.save(string, SaveFormat)メソッドを使用してExcelファイルを保存します。
次のコードサンプルは、JSONからExcelにデータをインポートする方法を示しています。
// JSONデータをロードする
var jsonInput = '[{"nodeId":1,"reputation":1134},{"nodeId":2,"reputation":547},{"nodeId":3,"reputation":1703},{"nodeId":4,"reputation":-199},{"nodeId":5,"reputation":-306},{"nodeId":6,"reputation":-49},{"nodeId":7,"reputation":1527},{"nodeId":8,"reputation":1223}]'
// 空白のワークブックオブジェクトを作成します
var workbook = aspose.cells.Workbook()
// デフォルトの空のワークシートにアクセスする
var worksheet = workbook.getWorksheets().get(0)
// フォーマット用にJsonLayoutOptionsを設定します
var layoutOptions = aspose.cells.JsonLayoutOptions()
layoutOptions.setArrayAsTable(true)
// セルA1から始まるデフォルトのワークシートにJSONデータをインポートします
aspose.cells.JsonUtility.importData(jsonInput, worksheet.getCells(), 0, 0, layoutOptions)
// 結果のファイルを保存
workbook.save("output.xls", aspose.cells.SaveFormat.AUTO)
JSONデータを入力する
[{"nodeId":1,"reputation":1134},{"nodeId":2,"reputation":547},{"nodeId":3,"reputation":1703},{"nodeId":4,"reputation":-199},{"nodeId":5,"reputation":-306},{"nodeId":6,"reputation":-49},{"nodeId":7,"reputation":1527},{"nodeId":8,"reputation":1223}]'
Excelワークシートを出力する
JSONをスタイル付きのExcelに変換する
Java経由でNode.jsのAspose.Cellsを使用して、JSONからExcelへの変換でスタイルを適用することもできます。たとえば、フォント、色、配置、境界線のスタイルなどを設定できます。以下は、JSONからExcelにデータをインポートするときにスタイルを適用する手順です。
- 新しいWorkbookオブジェクトを作成します。
- Workbook.getWorksheets().get(0)メソッドを使用して、最初のワークシートの参照を取得します。
- CellsFactoryクラスのオブジェクトを作成し、CellsFactory.createStyle()メソッドを使用して、Styleの参照を取得します。
- 必要なスタイリングオプションを設定します。
- JsonLayoutOptionsクラスのオブジェクトを作成して、追加のオプションを設定します。
- JsonUtility.importData()メソッドを使用してJSONからExcelにデータをインポートします。
- Workbook.save(string, SaveFormat)メソッドを使用してExcelファイルを保存します。
次のコードサンプルは、Node.jsでJSONからExcelにデータをインポートするときにスタイルを適用します。
// JSONデータをロードする
var jsonInput = '[{"nodeId":1,"reputation":1134},{"nodeId":2,"reputation":547},{"nodeId":3,"reputation":1703},{"nodeId":4,"reputation":-199},{"nodeId":5,"reputation":-306},{"nodeId":6,"reputation":-49},{"nodeId":7,"reputation":1527},{"nodeId":8,"reputation":1223}]'
// 空白のワークブックオブジェクトを作成します
var workbook = aspose.cells.Workbook()
// デフォルトの空のワークシートにアクセスする
var worksheet = workbook.getWorksheets().get(0)
// スタイルを設定する
var factory = aspose.cells.CellsFactory()
style = factory.createStyle()
style.getFont().setBold(true)
style.getFont().setColor(aspose.cells.Color.getBlueViolet())
// フォーマット用にJsonLayoutOptionsを設定します
var layoutOptions = aspose.cells.JsonLayoutOptions()
layoutOptions.setArrayAsTable(true)
layoutOptions.setTitleStyle(style)
// セルA1から始まるデフォルトのワークシートにJSONデータをインポートします
aspose.cells.JsonUtility.importData(jsonInput, worksheet.getCells(), 0, 0, layoutOptions)
// 結果のファイルを保存
workbook.save("output.xlsx", aspose.cells.SaveFormat.AUTO)
Excelワークシートを出力する
無料ライセンスを取得する
一時ライセンスを取得して、評価の制限なしにJava経由でNode.jsのAspose.Cellsを使用できます。
結論
JSONファイルは、さまざまなアプリケーション間でデータを保存および共有するために非常に使用されます。多くの場合、JSONファイルからExcelワークシートにデータをエクスポートする必要があります。したがって、この記事では、Node.jsを使用してJSONをExcel XLSX/XLSに変換する方法を学習しました。また、JSONからExcelへの変換でフォーマットを適用する方法を見てきました。 Javaを介したNode.jsのAspose.Cellsの詳細については、ドキュメントにアクセスしてください。さらに、フォーラムから質問することもできます。