Парсер Excel-документов с Apache POI.

В сегодняшнем уроке мы продолжим рассматривать интересные фреймворки для решения тех или иных прикладных задач. Сегодня мы займемся парсингом файлов в форматах .xls и .xlsx популярного табличного процессора из пакета Microsoft Office.

На практике задача импорта в свою программу табличных данных довольно актуальна. Поэтому разберем одно из возможных решений для тех, кто использует для написания своих программ, работающих с табличными данными, язык Java.

Библиотека Apache POI – это специализированный API, с помощью которого вы можете получать данные из форматов Microsoft Office(на самом деле не только .xls, .xlsx, но и .doc, .ppt). Но в данном уроке мы рассмотрим именно взаимодействие с Excel.

Итак, что нам понадобится?

Для начала работы вам необходимо скачать библиотеку с официального сайта Apache , а затем добавить библиотеку в CLASSPATH. После подключения библиотеки можно начинать работу.

Традиционно, для тех, кто использует Maven, достаточно прописать в файле конфигурации следующие зависимости:

Предположим, что у нас есть таблица следующего содержания: имя человека, адрес и номер телефона. Напишем метод, реализующий чтение данных из файла Excel. Перед этим определим три константы, соответствующие номерам наших столбцов в Excel-документе.

Теперь реализуем сам метод чтения из Excel-файла. Перед этим файл необходимо подготовить!

Теперь перейдем к разбору самого метода. Для начала мы создаем экземпляр класса HSSFWorkbook, представляющий наш файл. В качестве параметра ему надо передать путь к файлу. Следом получаем первый рабочий лист. Это можно было сделать и по имени листа.

Далее мы начинаем построчно считывать значения столбцов и последовательно выводить их на экран.

Запись выполняется аналогичным образом. Давайте реализуем метод writeToExcel() для записи нескольких строк в файл.

Вот таким образом можно производить импорт и экспорт данных Excel. Табличные данные очень важны для статистической обработки и такая задача у вас может возникнуть в самых различных случаях. Также, возможно, что таким образом вы храните данные для решения каких-то задач машинного обучения или экономических задач.

Apache POI – удобный, свободно распространяемый фреймворк, который отлично выполняет свои задачи и не требует много времени на то, чтобы в нем разобраться.

На этом все! Спасибо за внимание! До встречи в следующих статьях!

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *