Java Excel файли (Apache POI),Блог Java програміста
Нотатки про програмування на Java та Scala, а також про UML, Android та не тільки…
@author: Віталій Лігай (Java EE Architect/Android Developer)
Java + Excel файли (Apache POI)
З періодичністю раз на два-три роки стикаюся з проектами, в яких знову потрібно працювати зExcel файлами. Напевно, це в мене щось кармічне. Зараз, вкотре доводиться реалізувати напівавтоматичний аналіз сотень excel-файлів з прайсами. У минулих своїх проектах використав JExcelApi. Нічого поганого про цю бібліотеку сказати не можу, але хочеться якогось розмаїття в житті, тому цього разу з товаришем вирішили спробувати Apache POI.
Apache POI підтримує як формат для звичайних*.xls файлів (HSSF) так і*.xlsx файли (XSSF).
До речі, формат для *.xls файли в Apache POI вони називають "HSSF - Horrible SpreadSheet Format", тобто "Вселяючий жах формат для електронних таблиць". Для того, щоб приступити до роботи, як зазвичай прописуємо залежності в pom.xml:
Наприклад, наведу дуже простий файл - список ПІБ, сума + Підсумок:

Якщо потрібно просто витягнути текст, можна використовувати "клас-звивач": ExcelExtractor
Висновок на консоль:
Коли цього недостатньо (наприклад, потрібно знайти потрібну комірку і т.д.), без проблем можна використовувати нормальне API: Приклад:
Висновок на консоль:
Звичайно якщо у вас не такі "рафіновані" приклади, то код буде набагато складнішим. Швидше за все вам доведеться робити ще один рівень API, заточений під ваші потреби або файли. Наприклад у мене товариш зробив для цих цілей: Парсер на Scala поверх Apache POI для аналізу Excel-файлів.