Преобразование JSON в Excel Node.js

MS Excel предоставляет широкий спектр функций для хранения и организации данных в виде рабочих листов, содержащихся в рабочих книгах. Помимо организации данных, он позволяет выполнять сортировку, визуализацию данных, математические вычисления и т. д. В некоторых случаях вы получаете данные в формате JSON и вам необходимо программно экспортировать их в рабочие листы Excel. В таких случаях в этой статье рассказывается, как преобразовать данные JSON в Excel XLSX/XLS в Node.js.

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 Node.js

Преобразование 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

JSON в XLSX Node.js

Получить бесплатную лицензию

Вы можете получить временную лицензию на использование Aspose.Cells для Node.js через Java без ограничений на пробную версию.

Вывод

Файлы JSON широко используются для хранения и обмена данными между различными приложениями. Часто вам нужно экспортировать данные из файлов JSON в рабочие листы Excel. Соответственно, в этой статье вы узнали, как конвертировать JSON в Excel XLSX/XLS с помощью Node.js. Кроме того, вы увидели, как применять форматирование при преобразовании JSON в Excel. Чтобы узнать больше об Aspose.Cells для Node.js через Java, посетите документацию. Кроме того, вы можете задать свои вопросы через наш форум.

Смотрите также