Jump to content
Main menu
Main menu
move to sidebar
hide
Navigation
Main page
Recent changes
Random page
Help about MediaWiki
Special pages
Niidae Wiki
Search
Search
Appearance
Create account
Log in
Personal tools
Create account
Log in
Pages for logged out editors
learn more
Contributions
Talk
Editing
Apache POI
(section)
Page
Discussion
English
Read
Edit
View history
Tools
Tools
move to sidebar
hide
Actions
Read
Edit
View history
General
What links here
Related changes
Page information
Appearance
move to sidebar
hide
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
==Architecture== The Apache POI project contains the following subcomponents (meaning of acronyms is taken from old documentation): * POIFS (Poor Obfuscation Implementation File System<ref name="javaworld2004"/>) β This component reads and writes [[Microsoft]]'s [[OLE 2]] [[COM Structured storage|Compound document]] format. Since all [[Microsoft Office]] files are [[OLE 2]] files, this component is the basic building block of all the other POI elements. POIFS can therefore be used to read a wider variety of files, beyond those whose explicit decoders are already written in POI. * HSSF (Horrible SpreadSheet Format<ref name="javaworld2004"/>) β reads and writes [[Microsoft Excel]] (XLS) format files. It can read files written by [[Microsoft Excel|Excel]] 97 onwards; this [[file format]] is known as the ''BIFF 8'' format. As the Excel file format is complex and contains a number of tricky characteristics, some of the more advanced features cannot be read. * XSSF (XML SpreadSheet Format) β reads and writes [[Office Open XML]] (XLSX) format files. Similar feature set to HSSF, but for Office Open XML files. * HPSF (Horrible Property Set Format<ref name="javaworld2004"/>) β reads "Document Summary" information from [[Microsoft Office]] files. This is essentially the information that one can see by using the ''File|Properties'' menu item within an [[Microsoft Office|Office]] application. * HWPF (Horrible Word Processor Format<ref name="apache1">{{cite web|url=https://poi.apache.org/apidocs/dev/ |title=POI API Documentation |publisher=Poi.apache.org |access-date=2019-03-07}}</ref>) β aims to read and write [[Microsoft Word|Microsoft Word 97]] (DOC) format files. This component is in initial stages of development. * XWPF (XML Word Processor Format<ref name="apache1"/>) β similar feature set to HWPF, but for Office Open XML files. * HSLF (Horrible Slide Layout Format<ref name="apache1"/>) β a pure Java implementation for [[Microsoft PowerPoint]] files. This provides the ability to read, create and edit presentations (though some things are easier to do than others) * XSLF (Open Office XML Slideshow Format) * HDGF (Horrible DiaGram Format<ref name="apache1"/>) β an initial pure Java implementation for [[Microsoft Visio]] binary files. It provides an ability to read the low level contents of the files. * HPBF (Horrible PuBlisher Format{{citation needed|date=March 2019}}) β a pure Java implementation for [[Microsoft Publisher]] files.<ref>{{cite web|url=https://poi.apache.org/components/hpbf/index.html |title=POI-HPBF - Java API To Access Microsoft Publisher Format Files |publisher=Poi.apache.org |access-date=2019-03-07}}</ref> * HSMF (Horrible Stupid Mail Format<ref>{{citation | url = http://npoi.codeplex.com/discussions/233518 | publisher = Microsoft | title = Codeplex NPOI|archive-url=https://web.archive.org/web/20120328092553/http://npoi.codeplex.com/discussions/233518|archive-date=2012-03-28}}</ref>{{Better source needed|date=January 2012|reason=[[WP:CIRCULAR]], as ref in source is this article}}) β a pure Java implementation for [[Microsoft Outlook]] MSG files.<ref> {{citation | title = POI-HSMF | publisher = Apache | url = http://poi.apache.org/hsmf/ | access-date = 2011-07-31 | archive-url = https://web.archive.org/web/20110807211225/http://poi.apache.org/hsmf/ | archive-date = 2011-08-07 | url-status = dead }} </ref> * DDF (Dreadful Drawing Format<ref name="apache1"/>) β a package for decoding the Microsoft Office Drawing format. * XDDF (XML Dreadful Drawing Format) The HSSF component is the most advanced feature of the library.<ref>{{citation | url = http://poi.apache.org/hssf/ | title = POI-HSSF | publisher = Apache}}</ref> Other components (HPSF, HWPF, and HSLF) are usable, but less full-featured.<ref>{{citation | url = http://poi.apache.org/hwpf/ | title = POI-HWPF | publisher = Apache}}</ref><ref>{{citation | url = http://poi.apache.org/hslf/ | title = POI-HSLF | publisher = Apache}}</ref> The POI library is also provided as a [[Ruby (programming language)|Ruby]]<ref>{{citation | title = POI-Ruby | publisher = Apache | url = http://poi.apache.org/poi-ruby.html}}</ref> or [[ColdFusion]] extension. There are modules for Big Data platforms (e.g. Apache Hive/Apache Flink/Apache Spark), which provide certain functionality of Apache POI, such as the processing of Excel files.<ref>{{cite web|url=https://github.com/ZuInnoTe/hadoopoffice/wiki |title=HadoopOffice for Hive/Flink/Spark |publisher=Github.com |date=2018-07-19 |access-date=2019-03-07}}</ref><ref>{{cite web|url=https://github.com/crealytics/spark-excel |title=Spark Excel |publisher=Github.com |access-date=2019-03-07}}</ref>
Summary:
Please note that all contributions to Niidae Wiki may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see
Encyclopedia:Copyrights
for details).
Do not submit copyrighted work without permission!
Cancel
Editing help
(opens in new window)
Search
Search
Editing
Apache POI
(section)
Add topic