Package nablarch.core.dataformat
Class FileRecordReader
java.lang.Object
nablarch.core.dataformat.FileRecordReader
- All Implemented Interfaces:
Closeable
,AutoCloseable
ファイルからの読み込みを行うリーダ。
入力形式のフォーマット定義ファイルと入力先ファイルを指定する。 明示的に指定しなかった場合のフォーマット定義ファイルの参照ディレクトリは、 "format"論理ベースパスに設定されたパスとなる。 同様に、データファイルの入力先は"input"論理ベースパスに設定されたパスとなる。
アプリケーションから、本クラスを直接使用することは許可しない。
本クラスはスレッドセーフを考慮した実装にはなっていないので、呼び出し元で同期化の制御を行うこと。
-
Constructor Summary
ConstructorDescriptionFileRecordReader
(File dataFile, File layoutFile) コンストラクタ。FileRecordReader
(File dataFile, File layoutFile, int bufferSize) コンストラクタ。FileRecordReader
(File dataFile, LayoutDefinition layoutDefinition) コンストラクタ。 -
Method Summary
Modifier and TypeMethodDescriptionvoid
close()
指定されたデータファイルに対するストリームを閉じ、 ファイルハンドラを開放する。protected void
入力ストリームを生成する。int
読み込み中のレコードのレコード番号を返却する。boolean
hasNext()
次に読み込むレコードがあるかどうかを返却する。protected FileRecordReader
初期化処理を行う。protected FileRecordReader
initialize
(DataRecordFormatter formatter) 初期化を行う。read()
指定されたデータファイルから次のレコードを読み込んで返す。protected DataRecord
レコードを1行読み込み、結果を返却する。
-
Constructor Details
-
FileRecordReader
コンストラクタ。- Parameters:
dataFile
- データファイルlayoutFile
- フォーマット定義ファイル
-
FileRecordReader
コンストラクタ。- Parameters:
dataFile
- データファイルlayoutFile
- フォーマット定義ファイルbufferSize
- ファイル読み込みの際に使用するバッファのサイズ
-
FileRecordReader
コンストラクタ。- Parameters:
dataFile
- データファイルlayoutDefinition
- フォーマット定義情報保持クラス
-
-
Method Details
-
initialize
初期化処理を行う。- Returns:
- このオブジェクト自体
-
initialize
初期化を行う。- Parameters:
formatter
- フォーマッタ- Returns:
- このオブジェクト自体
-
createInputStream
protected void createInputStream()入力ストリームを生成する。 -
read
指定されたデータファイルから次のレコードを読み込んで返す。- Returns:
- データレコード
-
hasNext
public boolean hasNext()次に読み込むレコードがあるかどうかを返却する。- Returns:
- 次に読み込むレコードがある場合、true
-
readRecord
レコードを1行読み込み、結果を返却する。- Returns:
- 読み込んだ結果が格納されるデータレコード
-
close
public void close()指定されたデータファイルに対するストリームを閉じ、 ファイルハンドラを開放する。- Specified by:
close
in interfaceAutoCloseable
- Specified by:
close
in interfaceCloseable
-
getRecordNumber
public int getRecordNumber()読み込み中のレコードのレコード番号を返却する。- Returns:
- レコード番号
-