74 lines
3.5 KiB
Markdown
74 lines
3.5 KiB
Markdown
# ExcelToJson
|
||
|
||
1. Утилита считывает поданный на вход xlsx-файл, путь к которому указывается в виде значения параметра при запуске утилиты.
|
||
2. Последовательно считываются строки и столбцы, создаётся объект с заданным набором полей и заносятся в список.
|
||
3. Список маршаллизуется и сохраняется в файл формата json. Файл имеет то же название, что и xlsx-документ и помещается в тот же каталог.
|
||
|
||
**Примечания**
|
||
|
||
***Формат xlsx-документа***
|
||
|
||
Подаваемый на вход xlsx-документ состоит из одного листа (sheet) и имеет заданный набор столбцов, первая строка это заголовок столбцов, все последующие строки - значения столбцов. Значения в первом столбце заданы в числовом формате типа integer, значения остальных столбцов заданы в строковом формате.
|
||
|
||
Пример:
|
||
|
||
| id | field | value | value_map |
|
||
| ------ | ------ | ------ | ------ |
|
||
| int | string | string | string |
|
||
|
||
***Формат json***
|
||
|
||
```
|
||
{
|
||
"id": 1,
|
||
"field": "string",
|
||
"value": "string",
|
||
"value_map": "string"
|
||
}
|
||
```
|
||
|
||
**Расширенная опция**
|
||
|
||
В дополнении к основной функциональности так же есть возможность прямой записи содержимого xlsx-файл в виде структуры в mongo db.
|
||
|
||
Структура записи mongo db имеет вид
|
||
|
||
```
|
||
{
|
||
"id": 1,
|
||
"field": "string",
|
||
"value": "string",
|
||
"value_map": "string"
|
||
}
|
||
```
|
||
|
||
**Инструкция по использованию**
|
||
|
||
Для запуска консольной программы exceltojson.jar необходимо наличие jdk не ниже версии 8
|
||
|
||
Программа работает в двух режимах, экспорт в json (по умолчанию) и экспорт в mongo db (нужно задать ключ при запуске программы)
|
||
|
||
***Общее описание запуска программы (экспорт в json)***
|
||
|
||
`java -jar exceltojson.jar <полный_путь_к_файлу_формата_xlsx>`
|
||
|
||
на выходе будет файл формата json, имеющий то же название что и входящий файл и будет располагаться в том же каталоге где и входящий файл
|
||
|
||
Общее описание запуска программы (экспорт в mongo db)
|
||
|
||
`java -jar exceltojson.jar --mongo=mongodb://<host>:<port>/<database>/<collection_name> <полный_путь_к_файлу_формата_xlsx>`
|
||
|
||
***Примеры запуска***
|
||
|
||
****Экспорт в json****
|
||
|
||
`java -jar exceltojson.jar c:\myfolder\myfile.xlsx`
|
||
|
||
На выходе получим json `c:\myfolder\myfile.json`
|
||
|
||
****Экспорт в mongo db****
|
||
|
||
`java -jar exceltojson.jar --mongo=mongodb://mongo-01.testbanki.ru:27017/dict/dictMap c:\myfolder\myfile.xlsx`
|
||
|
||
Данные из myfile.xlsx экспортируются в mongo db в указанную коллекцию dictMap базы данных dict
|