public class CsvReader extends Object implements RecordReader
The CSV format supported is defined by specification RFC 4180. By default, there is one exception: lines that span multiple records will throw an exception. To allow quoted multi-line fields, simply set multilineEnabled to true when constructing the reader.
The reader also supports the following customizations:
The reader will not recognize an escape character used outside of a quoted field.
| Constructor and Description |
|---|
CsvReader(Reader in)
Constructs a new CsvReader.
|
CsvReader(Reader in,
CsvParserConfiguration config)
Constructs a new CsvReader.
|
| Modifier and Type | Method and Description |
|---|---|
void |
close()
Closes this input stream.
|
int |
getRecordLineNumber()
Returns the starting line number of the last record record.
|
String |
getRecordText()
Returns the raw text of the last record read or null if the end of the
stream was reached.
|
String[] |
read()
Reads the next record from this input stream.
|
public CsvReader(Reader in)
in - the input stream to read frompublic CsvReader(Reader in, CsvParserConfiguration config) throws IllegalArgumentException
in - the input stream to read fromconfig - the reader configuration settings or null to accept defaultsIllegalArgumentException - if a configuration setting is invalidpublic int getRecordLineNumber()
getRecordLineNumber in interface RecordReaderpublic String getRecordText()
getRecordText in interface RecordReaderpublic String[] read() throws IOException, RecordIOException
read in interface RecordReaderIOException - if an I/O error occursRecordIOException - if the record is malformed and cannot
be parsed, but subsequent reads may still be possiblepublic void close()
throws IOException
RecordReaderclose in interface RecordReaderIOException - if an I/O error occurs closing the stream