概要 | パッケージ | クラス | 階層ツリー | 非推奨 API | 索引 | ヘルプ
openGion 5.1.6.0
前のクラス 次のクラス | フレームあり フレームなし
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド

## org.opengion.plugin.io
クラス TableWriter_Default

    java.lang.Object
      org.opengion.plugin.io.TableWriter_Default

すべての実装されたインタフェース:
  TableWriter

直系の既知のサブクラス:
  TableWriter_Calc, TableWriter_CSV, TableWriter_CSV2, TableWriter_Data, TableWriter_Data2, TableWriter_Excel, TableWriter_Fixed, TableWriter_Properties, TableWriter_Renderer, TableWriter_T, TableWriter_XML

    public class TableWriter_Default

extends Object
implements TableWriter

区切り文字指定(初期値：タブ)ゼロカンマファイルの書き出しクラスです。 ラベル，名前，データの出力部のみオーバーライドすれば，各種出力フォーマットに合わせた サブクラスを実現する事が可能です。 ゼロカンマファイルとは、EXCELのゼロサプレス対策として、頭ゼロの文字型データを出力する 時に、先頭にカンマ(')を付けて、ゼロが削除(見えなくなる)現象を抑止しているファイルです。 このクラスは,可変長タブ区切り文字ファイルの出力機能を実現しています。

機能階層
  ファイル出力
バージョン
  4.0
作成者
  Kazuhiko Hasegawa
導入されたバージョン:
  JDK5.0,

フィールドの概要
`protected int[]` | `clmNo`
`protected DBColumn[]` | `dbColumn`
`protected int[]` | `dbType`
`static int` | `NUMBER`
`protected int` | `numberOfColumns`
`static int` | `NVAR`
`static int` | `STRING`
`protected DBTableModel` | `table`

インタフェース org.opengion.hayabusa.io.TableWriter から継承されたフィールド
`CSV_SEPARATOR, TAB_SEPARATOR`

コンストラクタの概要
`TableWriter_Default()`

メソッドの概要
`protected boolean` | `createDBColumn()` numberOfColumns と DBColumn を初期化します。
`DBTableModel` | `getDBTableModel()` 内部の DBTableModel を返します。
`protected String` | `getEncode()` 読み取り元ファイルのエンコード文字列を取得します。
`String` | `getHeaderSequence()` DBTableModelの出力順を返します。
`String` | `getSeparator()` データを書き込む場合の,区切り文字を返します。
`boolean` | `isAppend()` DBTableModelのデータとして書き込むときに、追加モードで書き込むかどうかを取得します。
`boolean` | `isExcel()` このクラスが、EXCEL対応機能を持っているかどうかを返します。
`protected boolean` | `isUseNumber()` 行番号情報を、出力する(true)/しない(false)を返します。
`protected String` | `quotation(String data)` データを ダブルコーテーション（"）で囲みます。
`void` | `setAppend(boolean flag)` DBTableModelのデータとして書き込むときに、追加モードで書き込むかどうかを設定します。
`void` | `setColumns(String clms)` 出力先ファイルのカラム列を、外部（タグ）よりCSV形式の文字列で指定します。
`void` | `setDBTableModel(DBTableModel table, String lang)` DBTableModel をセットします。
`void` | `setEncode(String enc)` 読み取り元ファイルのエンコード文字列を指定します。
`void` | `setFilename(String filename)` 出力先ファイル名をセットします。
`void` | `setFontName(String fontName)` EXCEL出力時のデフォルトフォント名を設定します。
`void` | `setFontPoint(short point)` EXCEL出力時のデフォルトフォントポイント数を設定します。
`void` | `setHeaderSequence(String hs)` DBTableModelの出力順をセットします。
`void` | `setParam(List<HybsEntry> listParam)` パラメーターリストをセットします。
`void` | `setRefFilename(String filename)` EXCEL雛型参考ファイル名をセットします。
`void` | `setRefSheetName(String sheetName)` EXCEL雛型参考ファイルのシート名を設定します。
`void` | `setSeparator(String sep)` データを書き込む場合の,区切り文字をセットします。
`void` | `setSheetName(String sheetName)` DBTableModelのデータとして読み込むときのシート名を設定します。
`void` | `setUseNumber(boolean useNumber)` 行番号情報を、出力する(true)/しない(false)を指定します。
`protected void` | `writeClass(DBTableModel table, PrintWriter writer)` PrintWriter に DBTableModelのクラス名情報を書き込みます。
`protected void` | `writeData(DBTableModel table, PrintWriter writer)` PrintWriter に DBTableModelのテーブル情報を書き込みます。
`void` | `writeDBTable()` DBTableModel から 各形式のデータを作成して,PrintWriter に書き出します。
`void` | `writeDBTable(PrintWriter writer)` DBTableModel から データを作成して,PrintWriter に書き出します。
`protected void` | `writeHeader(PrintWriter writer)` PrintWriter に DBTableModelのヘッダー情報を書き込みます。
`protected void` | `writeLabel(DBTableModel table, PrintWriter writer)` PrintWriter に DBTableModelのラベル情報を書き込みます。
`protected void` | `writeName(DBTableModel table, PrintWriter writer)` PrintWriter に DBTableModelの項目名情報を書き込みます。
`protected void` | `writeSeparator(DBTableModel table, PrintWriter writer)` PrintWriter に セパレーターを書き込みます。
`protected void` | `writeSize(DBTableModel table, PrintWriter writer)` PrintWriter に DBTableModelのサイズ情報を書き込みます。

クラス java.lang.Object から継承されたメソッド
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

フィールドの詳細

### numberOfColumns

    protected int numberOfColumns

### table

    protected DBTableModel table

### dbColumn

    protected DBColumn[] dbColumn

### clmNo

    protected int[] clmNo

### dbType

    protected int[] dbType

### STRING

    public static final int STRING

関連項目:
  定数フィールド値

### NVAR

    public static final int NVAR

関連項目:
  定数フィールド値

### NUMBER

    public static final int NUMBER

関連項目:
  定数フィールド値

コンストラクタの詳細

### TableWriter_Default

    public TableWriter_Default()

メソッドの詳細

### writeDBTable

    public void writeDBTable()

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

  定義:
    インタフェース `TableWriter` 内の `writeDBTable`
  関連項目:
    `isExcel()`
  変更履歴:

    4.0.0 (2006/09/31) 新規追加

### writeDBTable

    public void writeDBTable(PrintWriter writer)

  DBTableModel から データを作成して,PrintWriter に書き出します。

  定義:
    インタフェース `TableWriter` 内の `writeDBTable`
  パラメータ:
    `writer` - PrintWriter
  変更履歴:

    3.1.1.0 (2003/03/28) 同期メソッド（synchronized付き）を非同期に変更する。
    3.5.4.2 (2003/12/15) writer の null チェックを廃止します。
    3.5.4.3 (2004/01/05) 引数に PrintWriter を受け取るように変更します。

### createDBColumn

    protected boolean createDBColumn()

  numberOfColumns と DBColumn を初期化します。 内部的に、DBTableModel、lang , columns を使用して、 numberOfColumns 、dbColumn、clmNo の値を初期化します。 カラムが１項目もない場合、言語(lnag)が未指定、DBTableModelが未指定(null) の場合は、false を返します。その場合は、以下の処理は正常に行えません。 データが０件の場合は、処理を行います。通常、ヘッダーのみのファイルを 作成することになります。(これを雛形として、取込データを登録する事が可能）

  戻り値:
    初期化成功：true / 失敗：false
  変更履歴:

    4.0.0 (2005/12/31) 外部指定のカラム名を使用
    5.1.6.0 (2010/05/01) DbType の初期値を設定する。

### writeHeader

    protected void writeHeader(PrintWriter writer)

  PrintWriter に DBTableModelのヘッダー情報を書き込みます。

  パラメータ:
    `writer` - PrintWriter
  変更履歴:

    3.1.1.0 (2003/03/28) 同期メソッド（synchronized付き）を非同期に変更する。

### writeLabel

    protected void writeLabel(DBTableModel table,
                              PrintWriter writer)

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

  パラメータ:
    `table` - DBTableModel
    `writer` - PrintWriter
  変更履歴:

    3.1.1.0 (2003/03/28) 同期メソッド（synchronized付き）を非同期に変更する。
    3.7.0.2 (2005/02/14) 行番号情報を、出力する(true)/しない(false)を指定
    4.0.0 (2005/12/31) 外部指定のカラム名を使用

### writeName

    protected void writeName(DBTableModel table,
                             PrintWriter writer)

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

  パラメータ:
    `table` - DBTableModel
    `writer` - PrintWriter
  変更履歴:

    3.1.1.0 (2003/03/28) 同期メソッド（synchronized付き）を非同期に変更する。
    3.7.0.2 (2005/02/14) 行番号情報を、出力する(true)/しない(false)を指定

### writeSize

    protected void writeSize(DBTableModel table,
                             PrintWriter writer)

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

  パラメータ:
    `table` - DBTableModel
    `writer` - PrintWriter
  変更履歴:

    3.1.1.0 (2003/03/28) 同期メソッド（synchronized付き）を非同期に変更する。
    3.5.5.5 (2004/04/23) DBColumn の size と maxlength の 意味を変更
    3.7.0.2 (2005/02/14) 行番号情報を、出力する(true)/しない(false)を指定

### writeClass

    protected void writeClass(DBTableModel table,
                              PrintWriter writer)

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

  パラメータ:
    `table` - DBTableModel
    `writer` - PrintWriter
  変更履歴:

    3.1.1.0 (2003/03/28) 同期メソッド（synchronized付き）を非同期に変更する。

### writeSeparator

    protected void writeSeparator(DBTableModel table,
                                  PrintWriter writer)

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

  パラメータ:
    `table` - DBTableModel
    `writer` - PrintWriter
  変更履歴:

    3.1.1.0 (2003/03/28) 同期メソッド（synchronized付き）を非同期に変更する。
    3.7.0.2 (2005/02/14) 行番号情報を、出力する(true)/しない(false)を指定

### writeData

    protected void writeData(DBTableModel table,
                             PrintWriter writer)

  PrintWriter に DBTableModelのテーブル情報を書き込みます。 このクラスでは，データを ダブルコーテーション（"）で囲みます。 PrintWriter に DBTableModelのテーブル情報を書き込みます。

  パラメータ:
    `table` - DBTableModel
    `writer` - PrintWriter
  変更履歴:

    2.0.0.5 (2002/09/30) 先頭が0 でかつ数字タイプ（S9 or R）でない場合に ' を出力するように修正。
    2.3.1.2 (2003/01/28) データ出力時に、改行が余分に出される箇所を修正。
    3.1.0.0 (2003/03/20) DBColumn から、getDbType() キーを直接取り出す
    3.1.1.0 (2003/03/28) 同期メソッド（synchronized付き）を非同期に変更する。
    3.3.3.1 (2003/07/18) ファイルリード/ライト時に後ろスペースの除去を行います。
    3.7.0.2 (2005/02/14) 行番号情報を、出力する(true)/しない(false)を指定
    3.8.0.1 (2005/06/17) DBTypeが NVAR の場合は、元のUnicodeに戻します。
    5.1.6.0 (2010/05/01) DbType の初期値(dbType)を利用する。

### setDBTableModel

    public void setDBTableModel(DBTableModel table,
                                String lang)

  DBTableModel をセットします。

  定義:
    インタフェース `TableWriter` 内の `setDBTableModel`
  パラメータ:
    `table` - DBTableModel
    `lang` - 言語コード
  変更履歴:

    3.1.1.0 (2003/03/28) 同期メソッド（synchronized付き）を非同期に変更する。
    3.5.4.2 (2003/12/15) lang 引数も同時に設定します。

### getDBTableModel

    public DBTableModel getDBTableModel()

  内部の DBTableModel を返します。

  定義:
    インタフェース `TableWriter` 内の `getDBTableModel`
  戻り値:
    DBTableModel

### setHeaderSequence

    public void setHeaderSequence(String hs)

  DBTableModelの出力順をセットします。 Label,Name,Size,Class,Data の各フィールドの頭文字のアルファベットで 出力順を設定します。 なお，出力順に指定しない項目は出力されません

  定義:
    インタフェース `TableWriter` 内の `setHeaderSequence`
  パラメータ:
    `hs` - 出力順 (LNSCD など）
  変更履歴:

    3.1.1.0 (2003/03/28) 同期メソッド（synchronized付き）を非同期に変更する。

### getHeaderSequence

    public String getHeaderSequence()

  DBTableModelの出力順を返します。 Label,Name,Size,Class,Data の各フィールドの頭文字のアルファベットで 出力順を設定します。 なお，出力順に指定しない項目は出力されません

  定義:
    インタフェース `TableWriter` 内の `getHeaderSequence`
  戻り値:
    出力順 (LNSCD など）

### setSeparator

    public void setSeparator(String sep)

  データを書き込む場合の,区切り文字をセットします。

  定義:
    インタフェース `TableWriter` 内の `setSeparator`
  パラメータ:
    `sep` - 区切り文字
  変更履歴:

    3.1.1.0 (2003/03/28) 同期メソッド（synchronized付き）を非同期に変更する。

### getSeparator

    public String getSeparator()

  データを書き込む場合の,区切り文字を返します。

  戻り値:
    separator 区切り文字

### setAppend

    public void setAppend(boolean flag)

  DBTableModelのデータとして書き込むときに、追加モードで書き込むかどうかを設定します。 デフォルトは、false(新規モード)です。

  定義:
    インタフェース `TableWriter` 内の `setAppend`
  パラメータ:
    `flag` - boolean true(追加モード)/false(新規モード)
  変更履歴:

    3.5.4.2 (2003/12/15) 新規追加

### isAppend

    public boolean isAppend()

  DBTableModelのデータとして書き込むときに、追加モードで書き込むかどうかを取得します。 デフォルトは、false(新規モード)です。

  定義:
    インタフェース `TableWriter` 内の `isAppend`
  戻り値:
    boolean true(追加モード)/false(新規モード)
  変更履歴:

    3.5.4.2 (2003/12/15) 新規追加

### setSheetName

    public void setSheetName(String sheetName)

  DBTableModelのデータとして読み込むときのシート名を設定します。 デフォルトは、"Sheet1" です。 これは、EXCEL追加機能として実装されています。 ※ このクラスでは実装されていません。

  定義:
    インタフェース `TableWriter` 内の `setSheetName`
  パラメータ:
    `sheetName` - String
  変更履歴:

    3.5.4.2 (2003/12/15) 新規追加
    3.5.4.3 (2004/01/05) 実装廃止（TableWriter_Excel へ移動）

### setRefSheetName

    public void setRefSheetName(String sheetName)

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

  定義:
    インタフェース `TableWriter` 内の `setRefSheetName`
  パラメータ:
    `sheetName` - String
  変更履歴:

    3.5.4.3 (2004/01/05) 新規追加

### isExcel

    public boolean isExcel()

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

  定義:
    インタフェース `TableWriter` 内の `isExcel`
  戻り値:
    boolean
  変更履歴:

    3.5.4.3 (2004/01/05) 新規追加

### setFilename

    public void setFilename(String filename)

  出力先ファイル名をセットします。(DIR + Filename) これは、EXCEL追加機能として実装されています。 ※ このクラスでは実装されていません。

  定義:
    インタフェース `TableWriter` 内の `setFilename`
  パラメータ:
    `filename` - EXCEL雛型参考ファイル名
  例外:
    `UnsupportedOperationException`
  変更履歴:

    3.5.4.3 (2004/01/05) 新規作成

### setRefFilename

    public void setRefFilename(String filename)

  EXCEL雛型参考ファイル名をセットします。(DIR + Filename) これは、EXCEL追加機能として実装されています。 ※ このクラスでは実装されていません。

  定義:
    インタフェース `TableWriter` 内の `setRefFilename`
  パラメータ:
    `filename` - EXCEL雛型参考ファイル名
  例外:
    `UnsupportedOperationException`
  変更履歴:

    3.5.4.3 (2004/01/05) 新規作成

### setFontName

    public void setFontName(String fontName)

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

  定義:
    インタフェース `TableWriter` 内の `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`
  パラメータ:
    `point` - short
  変更履歴:

    3.8.5.3 (2006/08/07) 新規追加

### setEncode

    public void setEncode(String enc)

  読み取り元ファイルのエンコード文字列を指定します。 ファイルは、BufferedReader で受け取る為、本来は、エンコードは不要ですが、 固定長ファイルの読み取り時のバイトコード分割時に、指定のエンコードで 分割する必要があります。（例えば、半角文字は、Shift_JIS では、１バイト）

  定義:
    インタフェース `TableWriter` 内の `setEncode`
  パラメータ:
    `enc` - ファイルのエンコード文字列
  変更履歴:

    3.5.4.5 (2004/01/23) 新規作成

### getEncode

    protected String getEncode()

  読み取り元ファイルのエンコード文字列を取得します。 ファイルは、BufferedReader で受け取る為、本来は、エンコードは不要ですが、 固定長ファイルの読み取り時のバイトコード分割時に、指定のエンコードで 分割する必要があります。（例えば、半角文字は、Shift_JIS では、１バイト）

  戻り値:
    String ファイルのエンコード文字列
  変更履歴:

    3.5.4.5 (2004/01/23) 新規作成

### setUseNumber

    public void setUseNumber(boolean useNumber)

  行番号情報を、出力する(true)/しない(false)を指定します。 通常のフォーマットでは、各行の先頭に行番号を出力します。 これは、#NAME 属性を使用する場合には、必ず出力する必要があります。 (#NAME 属性は、読み取り時には、必須です。) この、先頭の行番号が不要な場合（つまり、他のシステムへのデータ出力、 このシステムでは、#NAME 属性が出力されないため、読み込みできません。) この行番号を出力しないようにできます。 デフォルトは、true（出力する） です。

  定義:
    インタフェース `TableWriter` 内の `setUseNumber`
  パラメータ:
    `useNumber` - 行番号情報を、出力する(true)/しない(false)を指定
  変更履歴:

    3.7.0.2 (2005/02/14) 新規追加

### isUseNumber

    protected boolean isUseNumber()

  行番号情報を、出力する(true)/しない(false)を返します。 通常のフォーマットでは、各行の先頭に行番号を出力します。 これは、#NAME 属性を使用する場合には、必ず出力する必要があります。 (#NAME 属性は、読み取り時には、必須です。) この、先頭の行番号が不要な場合（つまり、他のシステムへのデータ出力、 このシステムでは、#NAME 属性が出力されないため、読み込みできません。) この行番号を出力しないようにできます。 デフォルトは、true（出力する） です。

  戻り値:
    行番号情報を、出力する(true)/しない(false)
  変更履歴:

    3.7.0.2 (2005/02/14) 新規追加

### setParam

    public void setParam(List<HybsEntry> listParam)

  パラメーターリストをセットします。 内部は、HybsEntry クラスを持っています。 引数が、null の場合は、何もしません。 ※ このクラスでは実装されていません。

  定義:
    インタフェース `TableWriter` 内の `setParam`
  パラメータ:
    `listParam` - List パラメーターリスト
  変更履歴:

    4.0.0 (2005/01/31) 新規追加

### setColumns

    public void setColumns(String clms)

  出力先ファイルのカラム列を、外部（タグ）よりCSV形式の文字列で指定します。 ただし、指定のカラム名は、DBTableModel上に存在している必要があります。

  定義:
    インタフェース `TableWriter` 内の `setColumns`
  パラメータ:
    `clms` - 出力先ファイルのカラム列（カンマ区切り文字）
  変更履歴:

    4.0.0 (2005/11/30) 新規追加

### quotation

    protected String quotation(String data)

  データを ダブルコーテーション（"）で囲みます。

  パラメータ:
    `data` - 元のString文字列
  戻り値:
    ダブルコーテーションで囲まれた文字列

概要 | パッケージ | クラス | 階層ツリー | 非推奨 API | 索引 | ヘルプ
| openGion 5.1.6.0
前のクラス 次のクラス | フレームあり フレームなし
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド

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