| 開発者 | Apache ソフトウェア財団 |
|---|---|
| 安定版リリース | 5.3.0 / 2024年7月2日[1] |
| リポジトリ | POI リポジトリ |
| 書かれた | ジャワ |
| オペレーティング·システム | クロスプラットフォーム |
| タイプ | Microsoft Office 形式にアクセスするためのAPI |
| ライセンス | Apache ライセンス 2.0 |
| Webサイト | apache.org より |
Apache POI は、 Apache Software Foundationが運営するプロジェクトであり、以前はJakarta Projectのサブプロジェクトでしたが、 Word、PowerPoint、ExcelなどのMicrosoft Office形式のファイルを読み書きするための純粋なJavaライブラリを提供します。
歴史とロードマップ
この名前はもともと「Poor Obfuscation Implementation」の頭字語で、 [2]ファイル形式が意図的に難読化されているように見えるが、リバースエンジニアリングに成功したことから、その難読化の程度が低すぎることをユーモラスに表現したものです。この説明と、さまざまなサブプロジェクトの類似した名前の説明は、そのようなユーモアが適切ではないと考える企業にツールをより効果的に宣伝するために、公式ウェブページから削除されました。元の著者 ( Andrew C. Oliverと Marc Johnson) は、同様に軽蔑的な意味合いを持つ、マッシュしたタロイモで作られたハワイの料理、ポイの存在にも言及しました。[3]
Office Open XML サポート
POI はバージョン 3.5 以降、ISO/IEC 29500:2008 Office Open XMLファイル形式をサポートしています。OOXML サポートへの重要な貢献は、この貢献の開発をMicrosoftから委託されたオープン ソース企業である Sourcesense [4]によるものです。[5]このリンクは論争を巻き起こし、一部の POI 貢献者は、Microsoft のOpen Specific Promise特許ライセンスに関する POI OOXML 特許保護に疑問を呈しました。[6]
建築
Apache POI プロジェクトには、次のサブコンポーネントが含まれています (頭字語の意味は古いドキュメントから取得されています)。
- POIFS (Poor Obfuscation Implementation File System [2] ) – このコンポーネントは、 MicrosoftのOLE 2 Compound Document Format を読み書きします。Microsoft OfficeファイルはすべてOLE 2ファイルであるため、このコンポーネントは他のすべての POI 要素の基本的な構成要素です。したがって、POIFS は、明示的なデコーダーがすでに POI で記述されているファイルだけでなく、より多様なファイルを読み取るために使用できます。
- HSSF (Horrible SpreadSheet Format [2] ) – Microsoft Excel ( XLS) 形式のファイルの読み取りと書き込みを行います。Excel 97 以降で作成されたファイルを読み取ることができます。このファイル形式はBIFF 8形式として知られています。Excel ファイル形式は複雑で、多くの扱いにくい特徴があるため、より高度な機能の一部は読み取ることができません。
- XSSF (XML スプレッドシート形式) - Office Open XML (XLSX) 形式のファイルの読み取りと書き込みを行います。HSSF と同様の機能セットですが、Office Open XML ファイル用です。
- HPSF (Horrible Property Set Format [2] ) – Microsoft Officeファイルから「ドキュメントの概要」情報を読み取ります。これは基本的に、 Officeアプリケーション内の[ファイル] | [プロパティ]メニュー項目を使用して表示できる情報です。
- HWPF(Horrible Word Processor Format [7] )は、 Microsoft Word 97 (DOC)形式のファイルの読み取りと書き込みを目的としています。このコンポーネントはまだ開発の初期段階にあります。
- XWPF(XMLワードプロセッサフォーマット[7]) – HWPFと同様の機能セットですが、Office Open XMLファイル用です。
- HSLF (Horrible Slide Layout Format [7] ) – Microsoft PowerPointファイル用の純粋なJava実装。プレゼンテーションの読み取り、作成、編集機能を提供します(ただし、いくつかの機能は他の機能よりも簡単です)。
- XSLF (Open Office XML スライドショー形式)
- HDGF(Horrible DiaGram Format [7] )は、 Microsoft Visioバイナリファイル用の初期の純粋なJava実装です。ファイルの低レベルコンテンツを読み取る機能を提供します。
- HPBF (Horrible PuBlisher Format [要出典] ) – Microsoft Publisherファイル用の純粋なJava実装。[8]
- HSMF (Horrible Stupid Mail Format [9] [より良いソースが必要] ) – Microsoft Outlook MSGファイル用の純粋なJava実装。[10]
- DDF(Dreadful Drawing Format [7]) – Microsoft Office Drawing形式をデコードするためのパッケージ。
- XDDF (XML ドレッドフル ドローイング フォーマット)
HSSFコンポーネントはライブラリの中で最も先進的な機能です。[11] 他のコンポーネント(HPSF、HWPF、HSLF)も使用可能ですが、機能が充実していません。[12] [13]
POIライブラリはRuby [14]またはColdFusion拡張機能としても提供されています。
ビッグデータプラットフォーム用のモジュール(Apache Hive / Apache Flink / Apache Sparkなど)があり、Excelファイルの処理など、Apache POIの特定の機能を提供します。[15] [16]
バージョン履歴
参照
参考文献
- ^ 「変更履歴」。2024年10月28日閲覧。
- ^ abcd Sundaram, Elango (2004 年 3 月 22 日)、「Excelling in Excel with Java」、JavaWorld 、 2020 年 7 月 21 日取得
- ^ 2004年10月のPOIホームページ、コヨーテソング、2004年10月15日時点のオリジナルよりアーカイブ、命名に関する独自の説明を示します。
- ^ ソースセンス
- ^ McDougall, Paul (2008 年 3 月 26 日). 「Microsoft Eyes Open Source Components for Office 2007」. InformationWeek . 2020 年 7 月 21 日閲覧。
- ^ Oliver, Andrew C. (2008 年 3 月 27 日)、「POI への Microsoft の ENCUMBERED 寄付の拒否」、POI 開発メーリング リスト アーカイブ、 2020 年 7 月 21 日取得
- ^ abcde 「POI API ドキュメント」。Poi.apache.org。2019年3 月 7 日閲覧。
- ^ 「POI-HPBF - Microsoft Publisher 形式ファイルにアクセスするための Java API」。Poi.apache.org。2019年3 月 7 日閲覧。
- ^ Codeplex NPOI、Microsoft、2012年3月28日時点のオリジナルよりアーカイブ
- ^ POI-HSMF、Apache、2011年8月7日時点のオリジナルよりアーカイブ、 2011年7月31日閲覧。
- ^ POI-HSSF、アパッチ
- ^ POI-HWPF、Apache
- ^ POI-HSLF、アパッチ
- ^ POI-Ruby、Apache
- ^ 「HadoopOffice for Hive/Flink/Spark」。Github.com。2018年7月19日。 2019年3月7日閲覧。
- ^ 「Spark Excel」。Github.com 。 2019年3月7日閲覧。
外部リンク
- 公式サイト
