TOP設計・移行・活用> HSSFの基本
オープンソース帳票システム
オープンソース帳票システム

第8回:ピボットテーブル(後編)
著者:ビーブレイクシステムズ  横井 朗   2005/4/25
前のページ  1  2   3  4  次のページ
HSSFの基本

   まずは、HSSFからExcelを操作する際に必要となる基本的な概念について説明します。HSSFでは図1のようにワークブックの構成がそのままHSSFのクラスに対応しています。そのためワークブックを作成して、シートを追加するといったExcel上の操作に近い感覚でプログラムが書けますので、比較的理解しやすいと思います。
ExcelとHSSFのクラスの関係
図1:ExcelとHSSFのクラスの関係
(画像をクリックすると別ウィンドウに拡大図を表示します)


(1)HSSFWorkbook
Excelのワークブックに対応するクラス。複数のシートを持つことができる
(2)HSSFSheet
Excelのシートに対応するクラス。複数の行を持つことができる
(3)HSSFRow
Excelの行に対応するクラス。複数のセルを持つことができる
(4)HSSFCell
Excelのセルに対応するクラス
新規ワークブックの作成

   それでは、「Hello World!」と入力されたワークブック(図2)の生成を例に見て行きましょう。以下で説明するようにワークブックからシート、シートから行、行からセルを作成し、セルにデータを設定します。この流れが基本的なHSSFの使用方法になります。

サンプルワークブック
図2:サンプルワークブック


package poi;

import java.io.FileOutputStream;
import org.apache.poi.hssf.usermodel.HSSFCell;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;

/**
* ワークブックの新規作成サンプル
*/
public class HSSFCreateSample {
public static void main(String args[]) throws Exception {
// (1)ワークブックの生成
HSSFWorkbook wb = new HSSFWorkbook();

// (2)シートの生成
HSSFSheet sheet = wb.createSheet("New Sheet");

// (3)行を生成
HSSFRow row = sheet.createRow(1);

// (4)セルを生成
HSSFCell cell = row.createCell((short)1);

// (5)セルに文字列を設定
cell.setCellValue("Hello World!");

// (6)ワークブックの出力
FileOutputStream fos = new FileOutputStream("./output/workbook.xls");
wb.write(fos);
fos.close();
}
}
(1)ワークブックの生成

   ワークブックを新規に生成する場合は、引数無しのデフォルトコンストラクタを使用します。既存のワークブックを読み込む場合は"POIFSFileSystem"や"InputStream"を引数にとるコンストラクタを使用します。


(2)シートの生成

   作成したワークブックに新規シートを生成します。ここでは「New Sheet」というシート名を指定していますが、日本語のシート名を使用したい場合にはシート作成後にエンコーディングを指定して設定します。

// シートの生成
HSSFSheet sheet = wb.createSheet();
// シート名に日本語を設定する場合はエンコーディング指定
wb.setSheetName(0, "売上一覧", HSSFWorkbook.ENCODING_UTF_16);
(3)行を生成

   作成したワークブックに、インデックスを指定して行を新規に生成します。


(4)セルを生成

   生成した行に、インデックスを指定してセルを新規に生成します。


(5)セルに文字列を設定

   生成したセルに文字列を設定します。セルにスタイルを設定する場合や、日本語を使用する場合は"HSSFCellStyle"を使用します。詳細は次ページで説明する「売上一覧の作成」を参照してください。


(6)ワークブックの出力

   作成したワークブックをファイルに出力します。

前のページ  1  2   3  4  次のページ


ビーブレイクシステムズ
著者プロフィール
株式会社ビーブレイクシステムズ  横井 朗  
オープンソース指向技術コンサルタント。Java専門のソフトウェアハウス〜フリーエンジニアを経て現職。帳票開発のみならず、オープンソースを用いたシステム構築を日々提案。なによりもお客様の真のニーズを求めるため社内外でオープンソースに関する啓蒙活動を行う。


INDEX
第8回:ピボットテーブル(後編)
  ワークブックを生成する
HSSFの基本
  売上一覧の作成
  ワークブックの読み込み