- Home ›
- Apache POIでExcelを操作 ›
- 行
行の新規作成
シートの中のいずれかのセルに対して値を設定する場合には、そのセルが含まれる行をまず作成する必要があります。行を作成し、さらに行の中にセルを作成してから、そのセルに対して値を設定するという手順を取ります。ここではまず新しく行を作成する方法を確認します。
Apache POIにおいて行を表すオブジェクトは「HSSFRow」クラス及び「XSSFRow」クラスのオブジェクトとなります。
HSSFRowクラスのクラス定義は次のようになっています。
public final class HSSFRow extends java.lang.Object implements Row java.lang.Object L org.apache.poi.hssf.usermodel.HSSFRow
新規にHSSFRowクラスのオブジェクトを作成するにはHSSFSheetクラスで用意されているcreateRowメソッドなどを使って作成します。
HSSFWorkbook wb = new HSSFWorkbook(); HSSFSheet sheet = wb.createSheet(); HSSFRow row = sheet.createRow(0);
続いてXSSFRowクラスです。XSSFRowクラスのクラス定義は次のようになっています。
public class XSSFRow extends java.lang.Object implements Row, java.lang.Comparable<XSSFRow> java.lang.Object L org.apache.poi.xssf.usermodel.XSSFRow
新規にXSSFRowクラスのオブジェクトを作成するにはXSSFSheetクラスで用意されているcreateRowメソッドなどを使って作成します。
XSSFWorkbook wb = new XSSFWorkbook(); XSSFSheet sheet = wb.createSheet(); XSSFRow row = sheet.createRow(0);
このようにExcel2003までの形式の行と、Excel2007の形式の行を明示的に作成することができます。
Rowインターフェース
「ss」ユーザーモデルでは、まずWorkbookインターフェースを実装したクラスのオブジェクトを作成し、そこからSheetインターフェースを実装したクラスのオブジェクトを作成しました。同じように行を作成するにはSheetインターフェースで用意されているcreateRowメソッドを使って行オブジェクトを作成します。
Row createRow(int rownum)
Create a new row within the sheet and return the high level representation Returns: rownum - row number Returns: high level Row object representing a row in the sheet
このメソッドを使って作成されるオブジェクトはRowインターフェースを実装したクラスのオブジェクトとなります。Rowインターフェースは「HSSFRow」クラス及び「XSSFRow」クラスに共通するスーパーインターフェースです。
実際の使い方は次のようになります。
Workbook wb1 = new HSSFWorkbook(); Sheet sheet1 = wb1.createSheet(); Row row1 = sheet1.createSheet(0); Workbook wb2 = new XSSFWorkbook(); Sheet sheet2 = wb2.createSheet(); Row row2 = sheet2.createSheet(0);
どちらのファイルフォーマットの形式のものであっても同じように行を扱うことができます。
( Written by Tatsuo Ikura )
著者 / TATSUO IKURA
これから IT 関連の知識を学ばれる方を対象に、色々な言語でのプログラミング方法や関連する技術、開発環境構築などに関する解説サイトを運営しています。