jp.terasoluna.fw.file.dao.standard
クラス PlainFileLineIterator

java.lang.Object
  上位を拡張 jp.terasoluna.fw.file.dao.standard.AbstractFileLineIterator<java.lang.Object>
      上位を拡張 jp.terasoluna.fw.file.dao.standard.PlainFileLineIterator
すべての実装されたインタフェース:
java.util.Iterator, FileLineIterator<java.lang.Object>

public class PlainFileLineIterator
extends AbstractFileLineIterator<java.lang.Object>

ファイル行オブジェクトを用いないファイル読込機能。

テキストファイルから1行分のデータを読み取り文字列として呼出元に返却する。 他のファイルアクセス機能とは異なり、ファイル行オブジェクトを使わない。

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

※注意事項


フィールドの概要
private  int currentLineCount
          現在ファイル入力処理済みのデータ部内の行数。
private  char delimiter
          区切り文字。
private  char encloseChar
          囲み文字。
private  boolean readTrailer
          トレイラ部処理確認用フラグ。
 
コンストラクタの概要
PlainFileLineIterator(java.lang.String fileName, java.lang.Class clazz, java.util.Map<java.lang.String,ColumnParser> columnParserMap)
          コンストラクタ。
 
メソッドの概要
 int getCurrentLineCount()
          現在ファイル入力処理済みのデータ部内の行数を取得する。
 char getDelimiter()
          区切り文字を取得する。
 char getEncloseChar()
          囲み文字を取得する。
 java.util.List<java.lang.String> getTrailer()
          トレイラ部のデータを取得する。
protected  boolean isCheckColumnAnnotationCount()
          ファイル行オブジェクトにアノテーションが設定されている事をチェックするかどうかを返す。
 java.lang.String next()
          繰り返し処理でファイル行オブジェクトを返却する。
 java.lang.String[] separateColumns(java.lang.String fileLineString)
          文字列分割処理。
 void skip(int skipLines)
          データ部のデータを読み飛ばす処理を行う。
 
クラス jp.terasoluna.fw.file.dao.standard.AbstractFileLineIterator から継承されたメソッド
closeFile, getColumnBytes, getColumnEncloseChar, getFields, getFileEncoding, getFileName, getHeader, getHeaderLineCount, getLineFeedChar, getTotalBytes, getTrailerLineCount, hasNext, init, isCheckByte, isCheckByte, isCheckEncloseChar, isEnclosed, readLine, remove, setLineFeedChar
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

フィールドの詳細

delimiter

private char delimiter
区切り文字。


encloseChar

private char encloseChar
囲み文字。


currentLineCount

private int currentLineCount
現在ファイル入力処理済みのデータ部内の行数。


readTrailer

private boolean readTrailer
トレイラ部処理確認用フラグ。

コンストラクタの詳細

PlainFileLineIterator

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

パラメータ:
fileName - ファイル名
clazz - 結果クラス
columnParserMap - フォーマット処理リスト
メソッドの詳細

separateColumns

public java.lang.String[] separateColumns(java.lang.String fileLineString)
文字列分割処理。

データ部のデータ1行分をファイル行オブジェクトのアノテーションの記述に従いカラムに分割する。
このクラスでは処理は実装されていないため、UnsupportedOperationExceptionがスローされる。

定義:
クラス AbstractFileLineIterator<java.lang.Object> 内の separateColumns
パラメータ:
fileLineString - データ部のデータ1行分
戻り値:
データ部1行の文字列を分解した文字配列

next

public java.lang.String next()
繰り返し処理でファイル行オブジェクトを返却する。

次の行のレコードの情報をファイル行オブジェクトに格納して返却する。

定義:
インタフェース java.util.Iterator 内の next
定義:
インタフェース FileLineIterator<java.lang.Object> 内の next
オーバーライド:
クラス AbstractFileLineIterator<java.lang.Object> 内の next
戻り値:
ファイルの1行分の文字列

skip

public void skip(int skipLines)
データ部のデータを読み飛ばす処理を行う。

定義:
インタフェース FileLineIterator<java.lang.Object> 内の skip
オーバーライド:
クラス AbstractFileLineIterator<java.lang.Object> 内の skip
パラメータ:
skipLines - 読み飛ばす行数。

getTrailer

public java.util.List<java.lang.String> getTrailer()
トレイラ部のデータを取得する。

定義:
インタフェース FileLineIterator<java.lang.Object> 内の getTrailer
オーバーライド:
クラス AbstractFileLineIterator<java.lang.Object> 内の getTrailer
戻り値:
トレイラ部の文字列リスト
関連項目:
AbstractFileLineIterator.getTrailer()

getDelimiter

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

定義:
クラス AbstractFileLineIterator<java.lang.Object> 内の getDelimiter
戻り値:
区切り文字

getEncloseChar

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

定義:
クラス AbstractFileLineIterator<java.lang.Object> 内の getEncloseChar
戻り値:
囲み文字

getCurrentLineCount

public int getCurrentLineCount()
現在ファイル入力処理済みのデータ部内の行数を取得する。

オーバーライド:
クラス AbstractFileLineIterator<java.lang.Object> 内の getCurrentLineCount
戻り値:
現在ファイル入力処理済みのデータ部内の行数。

isCheckColumnAnnotationCount

protected boolean isCheckColumnAnnotationCount()
ファイル行オブジェクトにアノテーションが設定されている事をチェックするかどうかを返す。
PlainFileLineIteratorではチェックを行わないため、false。

オーバーライド:
クラス AbstractFileLineIterator<java.lang.Object> 内の isCheckColumnAnnotationCount
戻り値:
false