POIで作成したエクセルファイルをJavaで動的に開く方法
Apache POIもそろそろ3.5 beta6がでるようです。
大幅なメモリ消費を改善してほしいものですが、どうでしょうか!?
POIでExcelファイルを作成してその作成したファイルをすぐ確認させたいときに
動的にファイルを開く方法がある。Java6以降になってしまうのだけども
java.awt.Desktopを使えばよい。
以下ソース
import java.awt.Desktop; import java.io.File; import java.io.FileOutputStream; import org.apache.poi.hssf.usermodel.HSSFCell; import org.apache.poi.hssf.usermodel.HSSFRichTextString; import org.apache.poi.hssf.usermodel.HSSFSheet; import org.apache.poi.hssf.usermodel.HSSFWorkbook; public class POIOpen { private static final String filename = System.getProperty("user.dir") + "\\POIOPEN.xls"; public static void create() { HSSFWorkbook wb = new HSSFWorkbook(); HSSFSheet sheet = wb.createSheet("テスト"); HSSFCell cell = sheet.createRow(1).createCell(1); cell.setCellValue(new HSSFRichTextString("セル値")); try { FileOutputStream fos = new FileOutputStream(filename); wb.write(fos); fos.flush(); fos.close(); } catch (Exception e) { e.printStackTrace(); } } public static void main(String[] args) throws Exception { POIOpen.create(); Desktop.getDesktop().open(new File(filename)); } }