イントラマートAccel PlatformでPOI3.8を利用してxlsx形式のファイルを読み書きする方法
イントラマートAccel PlatformでEXCELのxlsx形式のファイルを読み書きするには「POI3.8」を利用する必要があります。
イントラマートとは
株式会社NTTデータイントラマート社が開発・販売している、Webアプリケーションシステムのシステム共通基盤(統合型フレームワーク)で、国内の著名企業を中心に6,000社以上に導入されています。
イントラマートを導入することにより、Webシステム開発における短納期・低コスト・標準化推進・品質向上を実現できます。
詳しくはこちらをご覧ください。
イントラマートAccel PlatformでPOI3.8を利用する方法
イントラマートAccel Platformリリースノートによると
Apache POI 3.2,3.7,3.8,3.9 | Apache POI – the Java API for Microsoft Documents |
Apache POI OpenXML4j 3.8.0 | POI-OpenXML4J – Java API To Access Office Open XML documents |
と言うバージョンが含まれています。
イントラマートAccel Platformでは「3.2系」と「3.8系」を使い分けることができます。
イントラマートAccel Platformでは「3.2系」と「3.8系」を使い分ける
具体的な使い分け方法としては「3.8系」はパッケージの名称を変更してバンドルされているので、そのパッケージ名でオブジェクトを生成します。
【3.2系】
var inputStream = new java.io.FileInputStream( filename ) ; var file = new Packages.org.apache.poi.poifs.filesystem.POIFSFileSystem( inputStream ) ; var workbook = new Packages.org.apache.poi.hssf.usermodel.HSSFWorkbook( file ) ;
【3.8系】
var inputStream = new java.io.FileInputStream( filename ) ; var workbook = new Packages.org.apache.poi_v3_8.ss.usermodel.WorkbookFactory.create( inputStream ) ;
生成した「workbook」は「xls」「xlsx」の区別を意識することなくcellやrowをあつかう事ができます。