jakartaPOI

javaでexcelの操作をするAPI

http://jakarta.apache.org/poi/のDownloadから適当なリンクをクリックする。
今回はhttp://ftp.kddilabs.jp/infosystems/apache/jakarta/poi/dev/bin/poi-bin-2.0-RC2-20040102.tar.gzから取得。

解凍して出来たファイルのpoi-2.0-RC2-20040102.jarを適当なディレクトリにコピーする。

サンプルファイルを作成

hoge.java

import java.io.*;
import org.apache.poi.hssf.usermodel.*;
import java.util.Date;

public class hoge{
	public static void main(String[] args){
		HSSFWorkbook workbook = new HSSFWorkbook();

		//シートを2枚作成
		HSSFSheet sheet1 = workbook.createSheet("hoge");
		HSSFSheet sheet2 = workbook.createSheet("test");
		//2枚目のシートの名前を日本語に変更する
		workbook.setSheetName(1,"テスト",HSSFWorkbook.ENCODING_UTF_16);

		//1枚目のシートにセルを作成する
		HSSFRow row = sheet1.createRow(0);
		HSSFCell cell = row.createCell((short)1);
		HSSFCell cell2 = row.createCell((short)2);
		HSSFCell cell3 = row.createCell((short)3);
		HSSFCell cell4 = row.createCell((short)4);
		HSSFCell cell5 = row.createCell((short)5);

		//値を定義
		boolean val1 = true;
		String val2 = "hogehoge";
		Date val3 = new Date();
		double val4 = 1234.56;
		String val5 = "ほげほげ日本語";

		//日本語を使うためcell5をエンコード
		cell5.setEncoding(HSSFCell.ENCODING_UTF_16);

		//cell3を日付型にセット
		HSSFCellStyle styleDate = workbook.createCellStyle();
		styleDate.setDataFormat(HSSFDataFormat.getBuiltinFormat("m/d/yy h:mm"));
		cell3.setCellStyle(styleDate);

		//セルに値をセット
		cell.setCellValue(val1);
		cell2.setCellValue(val2);
		cell3.setCellValue(val3);
		cell4.setCellValue(val4);
		cell5.setCellValue(val5);

		FileOutputStream out = null;
		try{
			//ファイルに書き出し
			out = new FileOutputStream("hoge.xls");
			workbook.write(out);
		}catch(IOException e){
			System.out.println(e.toString());
		}finally{
			try{
				out.close();
			}catch(IOException e){
				System.out.println(e.toString());
			}
		}
	}
}

コンパイルして実行。
クラスパスが通っていなければ付け加える。

javac -classpath /j2sdk/jar/poi/poi-2.0-RC2-20040102.jar hoge.java
java -classpath /j2sdk/jar/poi/poi-2.0-RC2-20040102.jar:. hoge

1シート目の一行目に5個の値が入ったファイルができる。

広告

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中