POI
概要
Javaでエクセルを操作するAPIです。
解説
サードパーティから提供されているAPIで、Javaでエクセルを操作できます。
Javaでエクセルを操作するAPIです。
解説
サードパーティから提供されているAPIで、Javaでエクセルを操作できます。
インストール
http://poi.apache.org/
にアクセスします。
左のメニューからdownloadをクリックします。
Binary Distributionを選択
~.zip等を選択します。
いずれかからダウンロードします。
ファイルを解凍します。
eclipseで利用する場合、
外部jarの取込で以下のjarファイルを指定します。
・poi直下の全jar
・lib直下のcommonsで始まるjar
・ooxml_lib直下の全jar
コンパイル時には以下のようにクラスパスが必要です。
javac -classpath パス\*;パス\lib\*;パス\ooxml-lib\* sample.java
実行時には以下のようにクラスパスが必要です。
java -classpath .;パス\*;パス\lib\*;パス\ooxml-lib\* sample
にアクセスします。
左のメニューからdownloadをクリックします。
Binary Distributionを選択
~.zip等を選択します。
いずれかからダウンロードします。
ファイルを解凍します。
eclipseで利用する場合、
外部jarの取込で以下のjarファイルを指定します。
・poi直下の全jar
・lib直下のcommonsで始まるjar
・ooxml_lib直下の全jar
コンパイル時には以下のようにクラスパスが必要です。
javac -classpath パス\*;パス\lib\*;パス\ooxml-lib\* sample.java
実行時には以下のようにクラスパスが必要です。
java -classpath .;パス\*;パス\lib\*;パス\ooxml-lib\* sample
動作確認
ソースコードサンプル
javac -classpath ~;poi-3.9\*;poi-3.9\lib\*;poi-3.9\ooxml-lib\* ~.java > result-compile.txt 2> compile-error.txt
実行
java -classpath ~;poi-3.9\*;poi-3.9\lib\*;poi-3.9\ooxml-lib\* ~.java > result-execute.txt 2> execute-error.txt
import java.io.*; import org.apache.poi.xssf.usermodel.XSSWorkbook; public class POITest{ public void test(){ XSSFWorkbook workbook = new XSSFWorkbook(); workbook.createSheet("test"); FileOutputStream out = null; try{ Out = new FileOutputStream("sample.xls"); workbook.write(out); } catch(IOException e){ } finally{ try{ out.close(); } catch(IOException e){ } } } }ソースコードサンプル2
Workbook book = createBook(); CellStyle cs1 = book.createCellStyle(); cs1.setBorderTop(CellStyle.BORDER_THIN); cs1.setBorderBottom(CellStyle.BORDER_MEDIUM); cs1.setBorderLeft(CellStyle.BORDER_DASHED); cs1.setBorderRight(CellStyle.BORDER_DOTTED); Sheet s1 = book.createSheet("シート名"); Row r1 = s1.createRow(3); Cell c1 =r1.createCell(6); c1.setCellVAlue("abc"); c1.setCellStyle(cs1); writeBook(book,"test2.xls"); protected Workbook createBook(){ return new XSSFWorkbook(); } protected void writeBook(Workbook w,String fn){コンパイル
javac -classpath ~;poi-3.9\*;poi-3.9\lib\*;poi-3.9\ooxml-lib\* ~.java > result-compile.txt 2> compile-error.txt
実行
java -classpath ~;poi-3.9\*;poi-3.9\lib\*;poi-3.9\ooxml-lib\* ~.java > result-execute.txt 2> execute-error.txt
リファレンス
生成 Workbook インターフェース 実装クラス HSSFWorkbook HSSFWorkbook() XSSFWorkbook XSSFWorkbook() 出力 Workbook void write(OutputStream stream) throws IOException 入力 static Workbook create(InputStream inp) throws IOException,InvalidFormatException シート Sheet createSheet() Sheet createSheet(String sheetname) Sheet cloneSheet(int sheetNum)0始まり void setSheetName(int sheet,String name) void removeSheetAt(int index) void setActiveSheet(int sheetIndex) void setFirstVisibleTab(int sheetIndex) void setSheetOrder(String sheetname,int pos) String getSheetName(int sheet) Sheet getSheet(String name) Sheet getSheetAt(int index) Sheetインタフェース Row createRow(int rownum) void setSelected(boolean value) void setColumnWidth(int colmnIndex,int width) int getColumnWidth(int columnIndex) Row getRow() 空行だった場合はnullが返る Cell createCell(int column) Row Cell getCell(int cellnum) 空セルだった場合はnullが返る Workbookインタフェース CellStyle createCellStyle() Cell void setCellStuyle(CellStyle style) void setFillForegroundColor(short bg) org.apache.poi.ss.usermodel.IndexedColors AQUA AUTOMATIC BLACK BLUE getIndex() setBorderTop(short border) setBorderBottom(short border) setBorderLeft(short border) setBorderRight(short border) CellStyle BORDER_NONE BORDER_THIN BORDER_MEDIUYM BORDER_DASHED BORDER_DOTTED BORDER_THICK BORDER_DOUBLE BORDER_HAIR BORDER_MEDIUM_DASHED BORDER_DASH_DOT BORDER_MEDIUM_DASH_DOT BORDER_DASH_DOT_DOT BORDER_MEDIUM_DASH_DOT_DOT BORDER_SLANTED_DASH_DOT Font createFont() void setFontName(String name) void setFontHeightInPoints(short height) void setColor(short color) void setBoldwight(short boldwight) void setItalic(boolean italic) void setUnderline(byte underline) Font.U_NONE Font.U_SINGLE Font.U_DOUBLE Font.U_SINGLE_ACCOUNTING Font.U_DOUBLE_ACCOUNTING void setStrikeout(boolean strikeout) CellStyle void setFont(Font font)