MS Excel предоставляет широкий спектр функций для хранения и организации данных в виде рабочих листов, содержащихся в рабочих книгах. Помимо организации данных, он позволяет выполнять сортировку, визуализацию данных, математические вычисления и т. д. В некоторых случаях вы получаете данные в формате JSON и вам необходимо программно экспортировать их в рабочие листы Excel. В таких случаях в этой статье рассказывается, как преобразовать данные JSON в Excel XLSX/XLS в Node.js.
- Node.js API для преобразования JSON в Excel
- Конвертировать JSON в рабочий лист Excel
- Применение форматирования ячеек в преобразовании JSON в Excel
Node.js API для преобразования JSON в Excel
Aspose.Cells для Node.js через Java — это мощный API, который позволяет создавать, изменять или преобразовывать файлы Excel в приложениях Node.js. Мы будем использовать этот API для импорта данных из JSON в листы Excel. Вы можете либо скачать пакет API, либо установить его с помощью следующей команды NPM.
> npm install aspose.cells
Преобразование JSON в Excel в Node.js
Ниже приведены шаги для преобразования JSON в Excel в Node.js:
- Создайте новый объект Workbook.
- Получите ссылку на первый рабочий лист, используя метод Workbook.getWorksheets().get(0).
- Создайте объект класса JsonLayoutOptions для установки дополнительных параметров.
- Импорт данных из JSON в Excel с помощью метода JsonUtility.importData().
- Сохраните файл Excel, используя метод Workbook.save(string, SaveFormat).
В следующем примере кода показано, как импортировать данные из 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}]'
// создать пустой объект Workbook
var workbook = aspose.cells.Workbook()
// доступ к пустому рабочему листу по умолчанию
var worksheet = workbook.getWorksheets().get(0)
// установить JsonLayoutOptions для форматирования
var layoutOptions = aspose.cells.JsonLayoutOptions()
layoutOptions.setArrayAsTable(true)
// импортировать данные JSON на рабочий лист по умолчанию, начиная с ячейки A1
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 со стилями
Вы также можете применять стили при преобразовании JSON в Excel, используя Aspose.Cells для Node.js через Java. Например, вы можете установить шрифт, цвет, выравнивание, стили границ и т. д. Ниже приведены шаги для применения стилей при импорте данных из JSON в Excel.
- Создайте новый объект Workbook.
- Получите ссылку на первый рабочий лист, используя метод Workbook.getWorksheets().get(0).
- Создайте объект класса CellsFactory и получите ссылку на Style с помощью метода CellsFactory.createStyle().
- Установите желаемые параметры стиля.
- Создайте объект класса JsonLayoutOptions для установки дополнительных параметров.
- Импорт данных из JSON в Excel с помощью метода JsonUtility.importData().
- Сохраните файл Excel, используя метод Workbook.save(string, SaveFormat).
В следующем примере кода стили применяются при импорте данных из JSON в Excel в Node.js.
// загрузить данные 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}]'
// создать пустой объект Workbook
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)
// импортировать данные JSON на рабочий лист по умолчанию, начиная с ячейки A1
aspose.cells.JsonUtility.importData(jsonInput, worksheet.getCells(), 0, 0, layoutOptions)
// сохранить результирующий файл
workbook.save("output.xlsx", aspose.cells.SaveFormat.AUTO)
Выходной лист Excel
Получить бесплатную лицензию
Вы можете получить временную лицензию на использование Aspose.Cells для Node.js через Java без ограничений на пробную версию.
Вывод
Файлы JSON широко используются для хранения и обмена данными между различными приложениями. Часто вам нужно экспортировать данные из файлов JSON в рабочие листы Excel. Соответственно, в этой статье вы узнали, как конвертировать JSON в Excel XLSX/XLS с помощью Node.js. Кроме того, вы увидели, как применять форматирование при преобразовании JSON в Excel. Чтобы узнать больше об Aspose.Cells для Node.js через Java, посетите документацию. Кроме того, вы можете задать свои вопросы через наш форум.