BeanIO 2.0.4

org.beanio.stream.fixedlength
Class FixedLengthReader

java.lang.Object
  extended by org.beanio.stream.fixedlength.FixedLengthReader
All Implemented Interfaces:
RecordReader

public class FixedLengthReader
extends Object
implements RecordReader

A FixedLengthReader is used to read records from a fixed length file or input stream. A fixed length record is represented using the String class. Records must be terminated by a single configurable character, or by default, any of the following: line feed (LF), carriage return (CR), or CRLF combination.

If a record may span multiple lines, a single line continuation character may be configured. The line continuation character must immediately precede the record termination character. Note that line continuation characters are not included in the record text.

Since:
1.0
Author:
Kevin Seim

Constructor Summary
FixedLengthReader(Reader in)
          Constructs a new FixedLengthReader.
FixedLengthReader(Reader in, FixedLengthParserConfiguration config)
          Constructs a new FixedLengthReader.
 
Method Summary
 void close()
          Closes this input stream.
 int getRecordLineNumber()
          Returns the line number of the last record from this input stream.
 String getRecordText()
          Returns the unparsed record text of the last record read.
 String read()
          Reads a single record from this input stream.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

FixedLengthReader

public FixedLengthReader(Reader in)
Constructs a new FixedLengthReader. By default, line continuation is disabled.

Parameters:
in - the input stream to read from

FixedLengthReader

public FixedLengthReader(Reader in,
                         FixedLengthParserConfiguration config)
                  throws IllegalArgumentException
Constructs a new FixedLengthReader.

Parameters:
in - the input stream to read from
config - the reader configuration settings or null to accept defaults
Throws:
IllegalArgumentException - if a configuration setting is invalid
Since:
1.2
Method Detail

getRecordLineNumber

public int getRecordLineNumber()
Description copied from interface: RecordReader
Returns the line number of the last record from this input stream. If a record spans multiple lines, the line number at the beginning of the record is returned. May return -1 if the end of the stream was reached, or 0 if new lines are not used to terminate records.

Specified by:
getRecordLineNumber in interface RecordReader
Returns:
the beginning line number of the last record read

getRecordText

public String getRecordText()
Description copied from interface: RecordReader
Returns the unparsed record text of the last record read.

Specified by:
getRecordText in interface RecordReader
Returns:
the unparsed text of the last record read

read

public String read()
            throws IOException,
                   RecordIOException
Description copied from interface: RecordReader
Reads a single record from this input stream. The type of object returned depends on the format of the stream.

Specified by:
read in interface RecordReader
Returns:
the record value, or null if the end of the stream was reached.
Throws:
IOException - if an I/O error occurs reading from the stream
RecordIOException - if the record is malformed and cannot be parsed, but subsequent reads may still be possible

close

public void close()
           throws IOException
Description copied from interface: RecordReader
Closes this input stream.

Specified by:
close in interface RecordReader
Throws:
IOException - if an I/O error occurs closing the stream

BeanIO 2.0.4

Copyright © 2010-2013 Kevin Seim