java.lang.Object
org.jooq.tools.csv.CSVReader
- All Implemented Interfaces:
Closeable
,AutoCloseable
,Iterator<String[]>
A very simple CSV reader released under a commercial-friendly license.
- Author:
- Glen Smith
-
Field Summary
Modifier and TypeFieldDescriptionstatic final int
The default line to start reading. -
Constructor Summary
ConstructorDescriptionConstructs CSVReader using a comma for the separator.Constructs CSVReader with supplied separator.Constructs CSVReader with supplied separator and quote char.Constructs CSVReader with supplied separator, quote char and quote handling behavior.Constructs CSVReader with supplied separator and quote char.Constructs CSVReader with supplied separator and quote char.CSVReader
(Reader reader, char separator, char quotechar, char escape, int line, boolean strictQuotes) Constructs CSVReader with supplied separator and quote char.CSVReader
(Reader reader, char separator, char quotechar, char escape, int line, boolean strictQuotes, boolean ignoreLeadingWhiteSpace) Constructs CSVReader with supplied separator and quote char.Constructs CSVReader with supplied separator and quote char. -
Method Summary
Modifier and TypeMethodDescriptionvoid
close()
Closes the underlying reader.boolean
hasNext()
String[]
next()
readAll()
Reads the entire file into a List with each element being a String[] of tokens.String[]
readNext()
Reads the next line from the buffer and converts to a string array.void
remove()
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface java.util.Iterator
forEachRemaining
-
Field Details
-
DEFAULT_SKIP_LINES
public static final int DEFAULT_SKIP_LINESThe default line to start reading.- See Also:
-
-
Constructor Details
-
CSVReader
Constructs CSVReader using a comma for the separator.- Parameters:
reader
- the reader to an underlying CSV source.
-
CSVReader
Constructs CSVReader with supplied separator.- Parameters:
reader
- the reader to an underlying CSV source.separator
- the delimiter to use for separating entries.
-
CSVReader
Constructs CSVReader with supplied separator and quote char.- Parameters:
reader
- the reader to an underlying CSV source.separator
- the delimiter to use for separating entriesquotechar
- the character to use for quoted elements
-
CSVReader
Constructs CSVReader with supplied separator, quote char and quote handling behavior.- Parameters:
reader
- the reader to an underlying CSV source.separator
- the delimiter to use for separating entriesquotechar
- the character to use for quoted elementsstrictQuotes
- sets if characters outside the quotes are ignored
-
CSVReader
Constructs CSVReader with supplied separator and quote char.- Parameters:
reader
- the reader to an underlying CSV source.separator
- the delimiter to use for separating entriesquotechar
- the character to use for quoted elementsescape
- the character to use for escaping a separator or quote
-
CSVReader
Constructs CSVReader with supplied separator and quote char.- Parameters:
reader
- the reader to an underlying CSV source.separator
- the delimiter to use for separating entriesquotechar
- the character to use for quoted elementsline
- the line number to skip for start reading
-
CSVReader
Constructs CSVReader with supplied separator and quote char.- Parameters:
reader
- the reader to an underlying CSV source.separator
- the delimiter to use for separating entriesquotechar
- the character to use for quoted elementsescape
- the character to use for escaping a separator or quoteline
- the line number to skip for start reading
-
CSVReader
public CSVReader(Reader reader, char separator, char quotechar, char escape, int line, boolean strictQuotes) Constructs CSVReader with supplied separator and quote char.- Parameters:
reader
- the reader to an underlying CSV source.separator
- the delimiter to use for separating entriesquotechar
- the character to use for quoted elementsescape
- the character to use for escaping a separator or quoteline
- the line number to skip for start readingstrictQuotes
- sets if characters outside the quotes are ignored
-
CSVReader
public CSVReader(Reader reader, char separator, char quotechar, char escape, int line, boolean strictQuotes, boolean ignoreLeadingWhiteSpace) Constructs CSVReader with supplied separator and quote char.- Parameters:
reader
- the reader to an underlying CSV source.separator
- the delimiter to use for separating entriesquotechar
- the character to use for quoted elementsescape
- the character to use for escaping a separator or quoteline
- the line number to skip for start readingstrictQuotes
- sets if characters outside the quotes are ignoredignoreLeadingWhiteSpace
- it true, parser should ignore white space before a quote in a field
-
-
Method Details
-
readAll
Reads the entire file into a List with each element being a String[] of tokens.- Returns:
- a List of String[], with each String[] representing a line of the file.
- Throws:
IOException
- if bad things happen during the read
-
readNext
Reads the next line from the buffer and converts to a string array.- Returns:
- a string array with each comma-separated element as a separate entry.
- Throws:
IOException
- if bad things happen during the read
-
close
Closes the underlying reader.- Specified by:
close
in interfaceAutoCloseable
- Specified by:
close
in interfaceCloseable
- Throws:
IOException
- if the close fails
-
hasNext
public boolean hasNext() -
next
-
remove
public void remove()
-