org.opengion.hayabusa.io

## インタフェース TableReader

- 既知の実装クラスのリスト:
    AbstractTableReader, TableReader_Calc, TableReader_Default, TableReader_Excel, TableReader_Fixed, TableReader_JExcel

      public interface TableReader

  DBTableModel インターフェース のオブジェクトをReader を用いて入力する為の，共通インターフェースです。
  機能階層
    ファイル入力
  バージョン
    4.0
  作成者
    Kazuhiko Hasegawa
  導入されたバージョン:
    JDK5.0,

- - ### フィールドの概要

    フィールド
    修飾子とタイプ | フィールドと説明
    --- | ---
    `static String` | `TAB_SEPARATOR` ヘッダー情報の入力時の区切り文字

  - ### メソッドの概要

    メソッド
    修飾子とタイプ | メソッドと説明
    --- | ---
    `DBTableModel` | `getDBTableModel()` 内部の DBTableModel を返します。
    `int` | `getMaxRowCount()` DBTableModelのデータとして登録する最大件数をこの値に設定します。
    `boolean` | `isExcel()` このクラスが、EXCEL対応機能を持っているかどうかを返します。
    `void` | `readDBTable()` DBTableModel から 各形式のデータを作成して,Reader より読み取ります。
    `void` | `readDBTable(BufferedReader reader)` DBTableModel から 各形式のデータを作成して,Reader より読み取ります。
    `void` | `setColumns(String clms)` 読み取り元ファイルのカラム列を、外部(タグ)より指定します。
    `void` | `setEncode(String enc)` 読み取り元ファイルのエンコード文字列を指定します。
    `void` | `setFilename(String filename)` 読み取り元ファイル名をセットします。
    `void` | `setMaxRowCount(int maxRowCount)` DBTableModelのデータとして登録する最大件数をこの値に設定します。
    `void` | `setResourceManager(ResourceManager resource)` リソースマネージャーをセットします。
    `void` | `setSeparator(String separator)` データを読み込む場合の,区切り文字をセットします。
    `void` | `setSheetName(String sheetName)` DBTableModelのデータとして読み込むときのシート名を設定します。
    `void` | `setSkipRowCount(int count)` データの読み飛ばし件数を設定します。
    `void` | `setUseNumber(boolean useNumber)` 行番号情報を、使用している(true)/していない(false)を指定します。
    `void` | `setUseRenderer(boolean useRenderer)` 読取処理でラベルをコードリソースに逆変換を行うかどうかを指定します。

- - ### フィールドの詳細

    - #### TAB_SEPARATOR

          static final String TAB_SEPARATOR

      ヘッダー情報の入力時の区切り文字
      関連項目:
        定数フィールド値

  - ### メソッドの詳細

    - #### readDBTable

          void readDBTable()

      DBTableModel から 各形式のデータを作成して,Reader より読み取ります。 このメソッドは、EXCEL 読み込み時に使用します。
      関連項目:
        `isExcel()`
      変更履歴:

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

    - #### readDBTable

          void readDBTable(BufferedReader reader)

      DBTableModel から 各形式のデータを作成して,Reader より読み取ります。
      パラメータ:
        `reader` - BufferedReaderオブジェクト
      変更履歴:

        3.5.4.3 (2004/01/05) 引数に、BufferedReader を受け取ル要に変更します。

    - #### setResourceManager

          void setResourceManager(ResourceManager resource)

      リソースマネージャーをセットします。 これは、言語(ロケール)に応じた DBColumn をあらかじめ設定しておく為に 必要です。 リソースマネージャーが設定されていない、または、所定のキーの DBColumn が リソースに存在しない場合は、内部で DBColumn オブジェクトを作成します。
      パラメータ:
        `resource` - リソースマネージャー
      変更履歴:

        4.0.0 (2005/01/31) lang ⇒ ResourceManager へ変更

    - #### getDBTableModel

          DBTableModel getDBTableModel()

      内部の DBTableModel を返します。
      戻り値:
        DBTableModelオブジェクト

    - #### setSeparator

          void setSeparator(String separator)

      データを読み込む場合の,区切り文字をセットします。 なお，このメソッドは,サブクラスによっては,使用しない場合があります。 もし，使用しないサブクラスを作成する場合は, UnsupportedOperationException を throw するように,サブクラスで実装して下さい。
      パラメータ:
        `separator` - 区切り文字

    - #### getMaxRowCount

          int getMaxRowCount()

      DBTableModelのデータとして登録する最大件数をこの値に設定します。 サーバーのメモリ資源と応答時間の確保の為です。
      戻り値:
        最大検索件数

    - #### setMaxRowCount

          void setMaxRowCount(int maxRowCount)

      DBTableModelのデータとして登録する最大件数をこの値に設定します。 サーバーのメモリ資源と応答時間の確保の為です。
      パラメータ:
        `maxRowCount` - 最大検索件数

    - #### setSheetName

          void setSheetName(String sheetName)

      DBTableModelのデータとして読み込むときのシート名を設定します。
      パラメータ:
        `sheetName` - シート名
      変更履歴:

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

    - #### isExcel

          boolean isExcel()

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

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

    - #### setFilename

          void setFilename(String filename)

      読み取り元ファイル名をセットします。(DIR + Filename) これは、EXCEL追加機能として実装されています。
      パラメータ:
        `filename` - 読み取り元ファイル名
      変更履歴:

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

    - #### setColumns

          void setColumns(String clms)

      読み取り元ファイルのカラム列を、外部(タグ)より指定します。 ファイルに記述された #NAME より優先して使用されます。
      パラメータ:
        `clms` - 読み取り元ファイルのカラム列(カンマ区切り文字)
      変更履歴:

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

    - #### setEncode

          void setEncode(String enc)

      読み取り元ファイルのエンコード文字列を指定します。 ファイルは、BufferedReader で受け取る為、本来は、エンコードは不要ですが、 固定長ファイルの読み取り時のバイトコード分割時に、指定のエンコードで 分割する必要があります。(例えば、半角文字は、Shift_JIS では、１バイト)
      パラメータ:
        `enc` - ファイルのエンコード文字列
      変更履歴:

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

    - #### setUseNumber

          void setUseNumber(boolean useNumber)

      行番号情報を、使用している(true)/していない(false)を指定します。 通常のフォーマットでは、各行の先頭に行番号が出力されています。 読み取り時に、#NAME 属性を使用する場合は、この行番号を無視しています。 #NAME 属性を使用せず、columns 属性でカラム名を指定する場合(他システムの 出力ファイルを読み取るケース等)では、行番号も存在しないケースがあり、 その様な場合に、useNumber="false" を指定すれば、データの最初から読み取り始めます。 この場合、出力データのカラムの並び順が変更された場合、columns 属性も 指定しなおす必要がありますので、できるだけ、#NAME 属性を使用するように してください。 なお、EXCEL 入力には、この設定は適用されません。(暫定対応) 初期値は、true(使用する) です。
      パラメータ:
        `useNumber` - 行番号情報 [true:使用している/false:していない]
      変更履歴:

        3.7.0.5 (2005/04/11) 新規追加

    - #### setSkipRowCount

          void setSkipRowCount(int count)

      データの読み飛ばし件数を設定します。 TAB区切りテキストやEXCEL等のデータの読み始めの初期値を指定します。 ファイルの先頭行が、０行としてカウントしますので、設定値は、読み飛ばす 件数になります。(１と指定すると、１件読み飛ばし、２行目から読み込みます。) 読み飛ばしは、コメント行などは、無視しますので、実際の行数分読み飛ばします。 ＃NAME属性や、columns 属性は、有効です。
      パラメータ:
        `count` - 読み始めの初期値
      変更履歴:

        5.1.6.0 (2010/05/01) 新規作成

    - #### setUseRenderer

          void setUseRenderer(boolean useRenderer)

      読取処理でラベルをコードリソースに逆変換を行うかどうかを指定します。 TableWriter_Renderer 系のクラスで出力した場合は、コードリソースがラベルで出力されます。 そのファイルを読み取ると、当然、エラーになります。 ここでは、コードリソースのカラムに対して、ラベルからコードを求める逆変換を行うことで、 Renderer 系で出力したファイルを取り込むことができるようにします。 ここでは、TableWriter 系と同様に、TableReader_Renderer 系のクラスを作るのではなく、 属性値のフラグで、制御します。 将来的には、TableWriter 系も廃止して、同様のフラグで制御するように変更する予定です。
      パラメータ:
        `useRenderer` - コードリソースのラベル逆変換を行うかどうかを指定
      変更履歴:

        5.2.1.0 (2010/10/01) 新規作成

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