POI ist eine freie Java-Programmbibliothek zum Lesen und Schreiben von Dateien im Dateiformat von Microsoft Office wie z. B. Word und Excel. Die Software startete als Teil des Jakarta-Projekts und ist nun ein Apache-Top-Level-Projekt.

Apache POI

Basisdaten

Entwickler Apache Software Foundation
Erscheinungsjahr 26. Januar 2006[1]
Aktuelle Version 5.2.5[2]
(25. November 2023)
Betriebssystem plattformübergreifend
Programmier­sprache Java[3][1]
Lizenz Apache-Lizenz, Version 2.0
poi.apache.org

Namensherkunft

Bearbeiten

Der Name war ursprünglich ein Akronym für „Poor Obfuscation Implementation“.

Softwarekomponenten

Bearbeiten

Das Apache-POI-Projekt enthält die folgenden Teilkomponenten:

  • POIFS (Poor Obfuscation Implementation File System): Diese Komponente liest und schreibt Dateien in Microsofts OLE-2-Compound-Document-Format. Beim OLE-2-Compound-Document-Format handelt es sich um ein Dateisystem, in dem die Daten eines Microsoft-Office-Dokuments in Form von Dateien abgelegt werden. Das Wort Obfuscation spielt darauf an, dass dieses Dateisystem etwas verschleiert ist.
  • HSSF (Horrible Spreadsheet Format) und XSSF: Diese Komponente liest und schreibt Dateien im Excel-Format (Excel-97, Excel-XP, Excel-2003, Excel-2007, Excel-2008).
  • HPSF (Horrible Property Set Format): Diese Komponente liest und schreibt Informationen über die Dokumenteigenschaften einer Datei im Microsoft-Office-Format (»Datei → Eigenschaften«).
  • HWPF (Horrible Word Processor Format) und XWPF: Diese Komponente liest und schreibt Dateien im Word-Format (Word-97, Word-XP, Word-2003, Word-2007). Die Komponente befindet sich im Scratchpad (siehe unten).
  • HSLF (Horrible Slide Format) und XSLF: Diese Komponente liest und schreibt Dateien im Powerpoint-Format (PowerPoint-97, Powerpoint-XP, Powerpoint-2003). Sie befindet sich im Scratchpad (siehe unten).
  • HDGF (Horrible DiaGram Format): Diese Komponente liest Dateien im Visio-Format (Visio-97, Visio-XP, Visio-2003, Visio-2007). Ein Beschreiben der Dateien ist nicht möglich. Die Komponente befindet sich im Scratchpad (siehe unten).
  • HPBF (Horrible PuBlisher Format): Diese Komponente liest Dateien im Publisher-Format. Die Komponente befindet sich im Scratchpad (siehe unten).
  • HSMF (Horrible Stupid Mail Format): Liest Dateien im Outlook-Format.

Es gibt externe Module für Big-Data-Plattformen (z. B. Apache Hive/Apache Flink/Apache Spark), welche gewisse Funktionen von Apache POI, wie die Verarbeitung von Exceldateien, zur Verfügung stellen[4][5].

Versionshistorie

Bearbeiten
Legende: Ältere Version; nicht mehr unterstützt Ältere Version; noch unterstützt Aktuelle Version Aktuelle Vorabversion Zukünftige Version

Versionsnummer

Freigabedatum
Aktuelle Version: 5.2.0 14. Januar 2022
Ältere Version; nicht mehr unterstützt: 5.1.0 01. November 2021
Ältere Version; nicht mehr unterstützt: 5.0.0 20. Januar 2021
Ältere Version; nicht mehr unterstützt: 4.1.2 17. Februar 2020
Ältere Version; nicht mehr unterstützt: 4.1.1 20. Oktober 2019
Ältere Version; nicht mehr unterstützt: 4.1.0 9. April 2019
Ältere Version; nicht mehr unterstützt: 4.0.1 3. Dezember 2018
Ältere Version; nicht mehr unterstützt: 4.0.0 7. September 2018
Ältere Version; nicht mehr unterstützt: 3.17 15. September 2017
Ältere Version; nicht mehr unterstützt: 3.16 19. April 2017
Ältere Version; nicht mehr unterstützt: 3.15 21. September 2016
Ältere Version; nicht mehr unterstützt: 3.14 7. März 2016
Ältere Version; nicht mehr unterstützt: 3.13 29. September 2015
Ältere Version; nicht mehr unterstützt: 3.12 11. Mai 2015
Ältere Version; nicht mehr unterstützt: 3.11 21. Dezember 2014
Ältere Version; nicht mehr unterstützt: 3.10.1 18. August 2014
Ältere Version; nicht mehr unterstützt: 3.10 8. Februar 2014
Ältere Version; nicht mehr unterstützt: 3.9 3. Dezember 2012
Ältere Version; nicht mehr unterstützt: 3.8 26. März 2012
Ältere Version; nicht mehr unterstützt: 3.7 29. Oktober 2010
Ältere Version; nicht mehr unterstützt: 3.6 14. Dezember 2009
Ältere Version; nicht mehr unterstützt: 3.5 28. September 2009
Ältere Version; nicht mehr unterstützt: 3.2 19. Oktober 2008
Ältere Version; nicht mehr unterstützt: 3.1 29. Juni 2008
Ältere Version; nicht mehr unterstützt: 3.0.2 4. Februar 2008
Ältere Version; nicht mehr unterstützt: 3.0.1 5. Juli 2007
Ältere Version; nicht mehr unterstützt: 3.0 18. Mai 2007
Ältere Version; nicht mehr unterstützt: 2.5.1 29. Februar 2004
Ältere Version; nicht mehr unterstützt: 2.5 29. Februar 2004
Ältere Version; nicht mehr unterstützt: 2.0 26. Januar 2004
Ältere Version; nicht mehr unterstützt: 1.5.1 16. Juni 2002
Ältere Version; nicht mehr unterstützt: 1.5 6. Mai 2002
Ältere Version; nicht mehr unterstützt: 1.2.0 19. Januar 2002
Ältere Version; nicht mehr unterstützt: 1.1.0 4. Januar 2002
Ältere Version; nicht mehr unterstützt: 1.0.2 11. Januar 2002
Ältere Version; nicht mehr unterstützt: 1.0.1 4. Januar 2002
Ältere Version; nicht mehr unterstützt: 1.0.0 30. Dezember 2001

Die POI-Entwicklerversion befindet sich als Java-Quellcode in einem Subversion-Repository.

Scratchpad

Bearbeiten

Noch nicht alle POI-Komponenten sind in einem Zustand, den die POI-Entwickler für ausgereift halten. Diese Komponenten können in der weiteren Entwicklung größere Änderungen erfahren. Um dies den Anwendern gegenüber deutlich zu machen, befinden sie sich im sogenannten Scratchpad, einem Bereich, der als Spielwiese und für Unausgereiftes vorgesehen ist.

Bearbeiten

Einzelnachweise

Bearbeiten
  1. a b projects.apache.org. (abgerufen am 8. April 2020).
  2. poi.apache.org. (abgerufen am 12. Januar 2023).
  3. The poi Open Source Project on Open Hub: Languages Page. In: Open Hub. (abgerufen am 26. September 2018).
  4. HadoopOffice für Hive/Flink/Spark
  5. Spark Excel