jp.terasoluna.fw.file.dao.standard
クラス VariableFileLineIterator<T>

java.lang.Object
  上位を拡張 jp.terasoluna.fw.file.dao.standard.AbstractFileLineIterator<T>
      上位を拡張 jp.terasoluna.fw.file.dao.standard.VariableFileLineIterator<T>
型パラメータ:
T - ファイル行オブジェクト
すべての実装されたインタフェース:
java.util.Iterator, FileLineIterator<T>

public class VariableFileLineIterator<T>
extends AbstractFileLineIterator<T>

可変長ファイルファイル用のファイルアクセス(データ取得)クラス。

可変長ファイルからデータを読み込み、1行分のデータをファイル行オブジェクトに 格納する。
CSVファイルでは区切り文字がカンマで固定されているが、可変長ファイルでは カンマ以外を利用することが可能。

※利用するファイル行オブジェクトのアノテーション項目
@.@FileFormatの設定項目
論理項目名 物理項目名 デフォルト値 必須性
行区切り文字 lineFeedChar システムの行区切り文字 オプション
区切り文字 delimiter ',' オプション
囲み文字 encloseChar なし('') オプション
ファイルエンコーディング fileEncodeing システムのファイルエンコーディング オプション
ヘッダ行数 headerLineCount 0 オプション
トレイラ行数 trailerLineCount 0 オプション

A.@InputFileColumn、@OutputFileColumnの設定項目
論理項目名 物理項目名 デフォルト値 必須性
カラムインデックス columnIndex - 必須
フォーマット columnFormat "" オプション
バイト長 bytes -1 オプション
パディング種別 paddingType パディングなし オプション
パディング文字 paddingChar ' ' オプション
トリム種別 trimType トリムなし オプション
トリム文字 trimChar ' ' オプション
文字変換種別 stringConverter NullStringConverter.class オプション

※注意事項


フィールドの概要
private  char delimiter
          区切り文字。
private  char encloseChar
          囲み文字。
 
コンストラクタの概要
VariableFileLineIterator(java.lang.String fileName, java.lang.Class<T> clazz, java.util.Map<java.lang.String,ColumnParser> columnParserMap)
          コンストラクタ。
 
メソッドの概要
 char getDelimiter()
          区切り文字を取得する。
 char getEncloseChar()
          囲み文字を取得する。
protected  java.lang.String[] separateColumns(java.lang.String fileLineString)
          読み込んだファイルのレコードを、区切り文字、 囲み文字に従って 文字配列に変換する。
 void setDelimiter(char delimiter)
          区切り文字を設定する。
 void setEncloseChar(char encloseChar)
          囲み文字を設定する。
 
クラス jp.terasoluna.fw.file.dao.standard.AbstractFileLineIterator から継承されたメソッド
closeFile, getCurrentLineCount, getFields, getFileEncoding, getFileName, getHeader, getHeaderLineCount, getLineFeedChar, getTrailer, getTrailerLineCount, hasNext, init, isCheckByte, next, readLine, remove, skip
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

フィールドの詳細

delimiter

private char delimiter
区切り文字。


encloseChar

private char encloseChar
囲み文字。

コンストラクタの詳細

VariableFileLineIterator

public VariableFileLineIterator(java.lang.String fileName,
                                java.lang.Class<T> clazz,
                                java.util.Map<java.lang.String,ColumnParser> columnParserMap)
コンストラクタ。

パラメータ:
fileName - ファイル名
clazz - ファイル行オブジェクトクラス
columnParserMap - テキスト設定ルール
メソッドの詳細

separateColumns

protected java.lang.String[] separateColumns(java.lang.String fileLineString)
読み込んだファイルのレコードを、区切り文字、 囲み文字に従って 文字配列に変換する。
引数fileLineStringnullもしくは 空文字の場合は、要素を持たないString配列を返します。

定義:
クラス AbstractFileLineIterator<T> 内の separateColumns
パラメータ:
fileLineString - 可変長ファイルの1レコード分の文字列
戻り値:
文字配列

getDelimiter

public char getDelimiter()
区切り文字を取得する。

定義:
クラス AbstractFileLineIterator<T> 内の getDelimiter
戻り値:
区切り文字

setDelimiter

public void setDelimiter(char delimiter)
区切り文字を設定する。

パラメータ:
delimiter - 区切り文字

getEncloseChar

public char getEncloseChar()
囲み文字を取得する。

定義:
クラス AbstractFileLineIterator<T> 内の getEncloseChar
戻り値:
囲み文字

setEncloseChar

public void setEncloseChar(char encloseChar)
囲み文字を設定する。

パラメータ:
encloseChar - 囲み文字