openGionopenGion
5.1.9.0

org.opengion.plugin.io
クラス TableWriter_Excel

java.lang.Object
  上位を拡張 org.opengion.hayabusa.io.AbstractTableWriter
      上位を拡張 org.opengion.plugin.io.TableWriter_Default
          上位を拡張 org.opengion.plugin.io.TableWriter_Excel
すべての実装されたインタフェース:
TableWriter
直系の既知のサブクラス:
TableWriter_ExcelRenderer

public class TableWriter_Excel
extends TableWriter_Default

ネイティブEXCELファイルの書き出しクラスです。 DefaultTableWriter を継承していますので,ラベル,名前,データの出力部のみ オーバーライドして,MIcrosoft Excelファイルの出力機能を実現しています。 出力形式は、openXML形式にも対応しています。 出力ファイルの拡張子が、.xlsならExcel2003のバイナリ形式、.xlsxならExcel2007の openXML形式で出力されます。

変更履歴:
4.3.4.3 (2008/12/22) 一部protected化
4.3.6.7 (2009/05/22) ooxml形式対応
機能階層
ファイル出力
バージョン
4.0
作成者
Kazuhiko Hasegawa
導入されたバージョン:
JDK5.0,

フィールドの概要
protected  int nRowIndex
           
protected  java.io.OutputStream out
           
 
クラス org.opengion.plugin.io.TableWriter_Default から継承されたフィールド
clmNo, dbColumn, dbType, NUMBER, numberOfColumns, NVAR, STRING, table
 
インタフェース org.opengion.hayabusa.io.TableWriter から継承されたフィールド
CSV_SEPARATOR, TAB_SEPARATOR
 
コンストラクタの概要
TableWriter_Excel()
           
 
メソッドの概要
protected  org.apache.poi.ss.usermodel.Workbook createWorkbook(java.lang.String fname)
          EXCELファイルのWookbookというStream(MicrosoftのOLE用語)を作ります 条件によって、新規かとファイルから読み込み書き込みかが分かれます。
protected  java.lang.String getNewSheetNameByName(org.apache.poi.ss.usermodel.Workbook workbook, java.lang.String nameSet)
          DBTableModelのデータとして書き込むときのシート名をセットします。
 boolean isExcel()
          このクラスが、EXCEL対応機能を持っているかどうかを返します。
protected  void removeRowCell(org.apache.poi.ss.usermodel.Row oThisRow, int nBegin)
          Excelの指定セルをシートから削除する。
 void setFilename(java.lang.String filename)
          出力先ファイル名をセットします。
protected  org.apache.poi.ss.usermodel.Row setFirstCellValue(int indexOfRow, int indexOfCell, java.lang.String dataVal)
          Excelの指定行の一番目セルにデータを設定する。
 void setFontName(java.lang.String fontName)
          EXCEL出力時のデフォルトフォント名を設定します。
 void setFontPoint(short point)
          EXCEL出力時のデフォルトフォントポイント数を設定します。
 void setRefFilename(java.lang.String filename)
          EXCEL雛型参考ファイル名をセットします。
 void setRefSheetName(java.lang.String sheetName)
          EXCEL雛型参考ファイルのシート名を設定します。
protected  void setRowCellValue(org.apache.poi.ss.usermodel.Row oThisRow, int indexOfCell, java.lang.String dataVal, int cellType)
          Excelの指定セルにデータを設定する。
 void setSheetName(java.lang.String sheetName)
          DBTableModelのデータとして読み込むときのシート名を設定します。
protected  void writeClass(DBTableModel table, java.io.PrintWriter writer)
          PrintWriter に DBTableModelのクラス名情報を書き込みます。
protected  void writeData(DBTableModel table, java.io.PrintWriter writer)
          PrintWriter に DBTableModelのテーブル情報を書き込みます。
 void writeDBTable()
          DBTableModel から 各形式のデータを作成して,PrintWriter に書き出します。
 void writeDBTable(java.io.PrintWriter writer)
          DBTableModel から データを作成して,PrintWriter に書き出します。
protected  void writeLabel(DBTableModel table, java.io.PrintWriter writer)
          PrintWriter に DBTableModelのラベル情報を書き込みます。
protected  void writeName(DBTableModel table, java.io.PrintWriter writer)
          PrintWriter に DBTableModelの項目名情報を書き込みます。
protected  void writeSeparator(DBTableModel table, java.io.PrintWriter writer)
          PrintWriter に セパレーターを書き込みます。
protected  void writeSize(DBTableModel table, java.io.PrintWriter writer)
          PrintWriter に DBTableModelのサイズ情報を書き込みます。
 
クラス org.opengion.plugin.io.TableWriter_Default から継承されたメソッド
createDBColumn, getDBTableModel, getEncode, getHeaderSequence, getSeparator, isAppend, isUseNumber, quotation, setAppend, setColumns, setDBTableModel, setEncode, setHeaderSequence, setParam, setSeparator, setUseNumber, writeHeader
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

フィールドの詳細

out

protected java.io.OutputStream out

nRowIndex

protected int nRowIndex
コンストラクタの詳細

TableWriter_Excel

public TableWriter_Excel()
メソッドの詳細

writeDBTable

public void writeDBTable()
DBTableModel から 各形式のデータを作成して,PrintWriter に書き出します。 このメソッドは、EXCEL 書き出し時に使用します。

定義:
インタフェース TableWriter 内の writeDBTable
オーバーライド:
クラス TableWriter_Default 内の writeDBTable
関連項目:
isExcel()
変更履歴:
4.0.0 (2006/09/31) 新規追加
5.1.4.0 (2010/03/01) columns 対応 、useNumber属性対応

writeDBTable

public void writeDBTable(java.io.PrintWriter writer)
DBTableModel から データを作成して,PrintWriter に書き出します。

定義:
インタフェース TableWriter 内の writeDBTable
オーバーライド:
クラス TableWriter_Default 内の writeDBTable
パラメータ:
writer - PrintWriter
変更履歴:
3.1.1.0 (2003/03/28) 同期メソッド(synchronized付き)を非同期に変更する。
3.5.4.3 (2004/01/05) 引数に PrintWriter を受け取るように変更します。
3.8.5.3 (2006/08/07) フォント名やフォントサイズの指定
4.0.0 (2006/09/31) UnsupportedOperationException を発行します。

writeLabel

protected void writeLabel(DBTableModel table,
                          java.io.PrintWriter writer)
PrintWriter に DBTableModelのラベル情報を書き込みます。 第一カラム目は、ラベル情報を示す "#Label" を書き込みます。 この行は、出力形式に無関係に、TableWriter.TAB_SEPARATOR で区切られます。

オーバーライド:
クラス TableWriter_Default 内の writeLabel
パラメータ:
table - DBTableModel
writer - PrintWriter
変更履歴:
5.1.4.0 (2010/03/01) useNumber属性対応

writeName

protected void writeName(DBTableModel table,
                         java.io.PrintWriter writer)
PrintWriter に DBTableModelの項目名情報を書き込みます。 第一カラム目は、項目名情報を示す "#Name" を書き込みます。 この行は、出力形式に無関係に、TableWriter.TAB_SEPARATOR で区切られます。

オーバーライド:
クラス TableWriter_Default 内の writeName
パラメータ:
table - DBTableModel
writer - PrintWriter
変更履歴:
3.1.1.0 (2003/03/28) 同期メソッド(synchronized付き)を非同期に変更する。
5.1.4.0 (2010/03/01) useNumber属性対応

writeSize

protected void writeSize(DBTableModel table,
                         java.io.PrintWriter writer)
PrintWriter に DBTableModelのサイズ情報を書き込みます。 第一カラム目は、サイズ情報を示す "#Size" を書き込みます。 この行は、出力形式に無関係に、TableWriter.TAB_SEPARATOR で区切られます。

オーバーライド:
クラス TableWriter_Default 内の writeSize
パラメータ:
table - DBTableModel
writer - PrintWriter
変更履歴:
3.5.5.5 (2004/04/23) DBColumn の size と maxlength の 意味を変更
5.1.4.0 (2010/03/01) useNumber属性対応

writeClass

protected void writeClass(DBTableModel table,
                          java.io.PrintWriter writer)
PrintWriter に DBTableModelのクラス名情報を書き込みます。 第一カラム目は、サイズ情報を示す "#Class" を書き込みます。 この行は、出力形式に無関係に、TableWriter.TAB_SEPARATOR で区切られます。

オーバーライド:
クラス TableWriter_Default 内の writeClass
パラメータ:
table - DBTableModel
writer - PrintWriter
変更履歴:
5.1.4.0 (2010/03/01) useNumber属性対応

writeSeparator

protected void writeSeparator(DBTableModel table,
                              java.io.PrintWriter writer)
PrintWriter に セパレーターを書き込みます。 第一カラム目は、サイズ情報を示す "#----" を書き込みます。 この行は、出力形式に無関係に、TableWriter.TAB_SEPARATOR で区切られます。

オーバーライド:
クラス TableWriter_Default 内の writeSeparator
パラメータ:
table - DBTableModel
writer - PrintWriter
変更履歴:
5.1.4.0 (2010/03/01) useNumber属性対応

writeData

protected void writeData(DBTableModel table,
                         java.io.PrintWriter writer)
PrintWriter に DBTableModelのテーブル情報を書き込みます。 このクラスでは,データを ダブルコーテーション(")で囲みます。 PrintWriter に DBTableModelのテーブル情報を書き込みます。

オーバーライド:
クラス TableWriter_Default 内の writeData
パラメータ:
table - DBTableModel
writer - PrintWriter
変更履歴:
3.8.0.1 (2005/06/17) DBTypeが NVAR の場合は、元のUnicodeに戻します。
3.8.5.3 (2006/08/07) DBType の nativeType に対応した、CELL_TYPE をセットします。
4.1.1.2 (2008/02/28) NativeタイプをEnum型(fukurou.model.NativeType)に変更
5.1.4.0 (2010/03/01) columns 対応
5.1.4.0 (2010/03/01) useNumber属性対応

setFirstCellValue

protected org.apache.poi.ss.usermodel.Row setFirstCellValue(int indexOfRow,
                                                            int indexOfCell,
                                                            java.lang.String dataVal)
Excelの指定行の一番目セルにデータを設定する。

パラメータ:
indexOfRow - 行の番号
indexOfCell - セルの番号
dataVal - String文字列
戻り値:
Rowのobject型
変更履歴:
4.3.4.0 (2008/12/01) POI3.2対応
4.3.4.3 (2008/12/22) protected化

setRowCellValue

protected void setRowCellValue(org.apache.poi.ss.usermodel.Row oThisRow,
                               int indexOfCell,
                               java.lang.String dataVal,
                               int cellType)
Excelの指定セルにデータを設定する。

パラメータ:
oThisRow - Row型のオブジェクト
indexOfCell - セルの番号
dataVal - String文字列
cellType - int(Cell.CELL_TYPE_STRING/Cell.CELL_TYPE_NUMERIC)
変更履歴:
4.3.4.0 (2008/12/01) POI3.2対応
4.3.4.3 (2008/12/22) protected化

removeRowCell

protected void removeRowCell(org.apache.poi.ss.usermodel.Row oThisRow,
                             int nBegin)
Excelの指定セルをシートから削除する。

パラメータ:
oThisRow - Row型のオブジェクト
nBegin - セルの開始番号
変更履歴:
4.3.4.0 (2008/12/01) POI3.2対応
4.3.4.3 (2008/12/22) protected化

getNewSheetNameByName

protected java.lang.String getNewSheetNameByName(org.apache.poi.ss.usermodel.Workbook workbook,
                                                 java.lang.String nameSet)
DBTableModelのデータとして書き込むときのシート名をセットします。 デフォルトは、"Sheet1" です。同じ名称のシートが存在する場合、そのシート 名の後に(2)、(3)のような文字列をくっ付けます。

パラメータ:
workbook - Workbook
nameSet - String文字列,指定のシート名
戻り値:
String シート名

setSheetName

public void setSheetName(java.lang.String sheetName)
DBTableModelのデータとして読み込むときのシート名を設定します。 デフォルトは、"Sheet1" です。 これは、EXCEL追加機能として実装されています。

定義:
インタフェース TableWriter 内の setSheetName
オーバーライド:
クラス TableWriter_Default 内の setSheetName
パラメータ:
sheetName - String
変更履歴:
3.5.4.2 (2003/12/15) 新規追加

setRefSheetName

public void setRefSheetName(java.lang.String sheetName)
EXCEL雛型参考ファイルのシート名を設定します。 これは、EXCEL追加機能として実装されています。 EXCELファイルを書き出す時に、雛型として参照するシート名を指定します。 これにより、複数の形式の異なるデータを順次書き出したり(appendモードを併用)する ことや、シートを指定して新規にEXCELを作成する場合にフォームを設定する事が可能になります。 デフォルトは、null(第一シート) です。

定義:
インタフェース TableWriter 内の setRefSheetName
オーバーライド:
クラス TableWriter_Default 内の setRefSheetName
パラメータ:
sheetName - String
変更履歴:
3.5.4.3 (2004/01/05) 新規追加

isExcel

public boolean isExcel()
このクラスが、EXCEL対応機能を持っているかどうかを返します。 EXCEL対応機能とは、シート名のセット、雛型参照ファイル名のセット、 書き込み元ファイルのFileオブジェクト取得などの、特殊機能です。 本来は、インターフェースを分けるべきと考えますが、taglib クラス等の 関係があり、問い合わせによる条件分岐で対応します。

定義:
インタフェース TableWriter 内の isExcel
オーバーライド:
クラス TableWriter_Default 内の isExcel
戻り値:
boolean
変更履歴:
3.5.4.3 (2004/01/05) 新規追加

setFilename

public void setFilename(java.lang.String filename)
出力先ファイル名をセットします。(DIR + Filename) これは、EXCEL追加機能として実装されています。

定義:
インタフェース TableWriter 内の setFilename
オーバーライド:
クラス TableWriter_Default 内の setFilename
パラメータ:
filename - EXCEL雛型参考ファイル名
例外:
java.lang.UnsupportedOperationException
変更履歴:
3.5.4.3 (2004/01/05) 新規作成

setRefFilename

public void setRefFilename(java.lang.String filename)
EXCEL雛型参考ファイル名をセットします。(DIR + Filename) これは、EXCEL追加機能として実装されています。

定義:
インタフェース TableWriter 内の setRefFilename
オーバーライド:
クラス TableWriter_Default 内の setRefFilename
パラメータ:
filename - EXCEL雛型参考ファイル名
変更履歴:
3.5.4.3 (2004/01/05) 新規作成

setFontName

public void setFontName(java.lang.String fontName)
EXCEL出力時のデフォルトフォント名を設定します。
これは、EXCEL追加機能として実装されています。
EXCELファイルを書き出す時に、デフォルトフォント名を指定します。 フォント名は、EXCELのフォント名をそのまま使用してください。
内部的に、POI の org.apache.poi.hssf.usermodel.HSSFFont#setFontName( String ) に設定されます。 デフォルトは、システムリソース の TABLE_WRITER_DEFAULT_FONT_NAME です。

定義:
インタフェース TableWriter 内の setFontName
オーバーライド:
クラス TableWriter_Default 内の setFontName
パラメータ:
fontName - String
変更履歴:
3.8.5.3 (2006/08/07) 新規追加

setFontPoint

public void setFontPoint(short point)
EXCEL出力時のデフォルトフォントポイント数を設定します。
これは、EXCEL追加機能として実装されています。
EXCELファイルを書き出す時に、デフォルトポイント数を指定します。 内部的に、POI の org.apache.poi.hssf.usermodel.HSSFFont#setFontHeightInPoints( short ) に設定されます。 デフォルトは、システムリソース の TABLE_WRITER_DEFAULT_FONT_POINTS です。

定義:
インタフェース TableWriter 内の setFontPoint
オーバーライド:
クラス TableWriter_Default 内の setFontPoint
パラメータ:
point - short
変更履歴:
3.8.5.3 (2006/08/07) 新規追加

createWorkbook

protected org.apache.poi.ss.usermodel.Workbook createWorkbook(java.lang.String fname)
EXCELファイルのWookbookというStream(MicrosoftのOLE用語)を作ります 条件によって、新規かとファイルから読み込み書き込みかが分かれます。

パラメータ:
fname - EXCEL雛型参考ファイル名
戻り値:
Workbook

openGion 5.1.9.0

Webアプリケーションフレームワーク openGion
SourceForge.JPCopyright (c) 2009 The openGion Project.