Package csv
Interface TableReader
- All Superinterfaces:
java.lang.Iterable<java.lang.Object[]>
,java.util.Iterator<java.lang.Object[]>
- All Known Implementing Classes:
AbstractColumnFilter
,AbstractRowFilter
,AbstractStreamTableReader
,AbstractTableReader
,CSVReader
,DefaultColumnFilter
,ExcelReader
,IndexRowFilter
,JdbcReader
,JTableReader
,XmlReader
public interface TableReader
extends java.util.Iterator<java.lang.Object[]>, java.lang.Iterable<java.lang.Object[]>
Introduces an interface for other implementations
of table reading interfaces.
The Reader interface defines an important rule: header rows are never delivered
by
Iterator.next()
but by getHeaderRow()
instead. All implementations
of this class must follow this rule.- Author:
- RalphSchuster
-
Method Summary
Modifier and Type Method Description void
close()
Closes the reader.int
getColumnIndex(java.lang.String name)
Returns the column index of given column name.java.lang.Object[]
getHeaderRow()
Returns the header row.int
getMinimumColumnCount()
Returns the minimum number of columns to be returned byIterator.next()
.boolean
hasHeaderRow()
Tells whether the underlying stream has a header row or notvoid
open()
Opens the reader or resets it.void
registerCommentCallBack(CommentCallback callback)
Registers a comment callback.void
reset()
Resets the reader.void
setHasHeaderRow(boolean hasHeaderRow)
Tells the reader whether the underlying stream will treat first row as header row.void
setMinimumColumnCount(int length)
Sets the minimum number of columns to be returned byIterator.next()
.void
unregisterCommentCallBack(CommentCallback callback)
Unregisters a comment callback.
-
Method Details
-
setHasHeaderRow
void setHasHeaderRow(boolean hasHeaderRow)Tells the reader whether the underlying stream will treat first row as header row.- Parameters:
hasHeaderRow
- true if there is a header row.
-
hasHeaderRow
boolean hasHeaderRow()Tells whether the underlying stream has a header row or not- Returns:
- true if there is a header row.
-
getHeaderRow
java.lang.Object[] getHeaderRow()Returns the header row. Please note that header rows are never delivered throughIterator.next()
.- Returns:
- header row if such was defined.
-
getColumnIndex
int getColumnIndex(java.lang.String name)Returns the column index of given column name. The first column with given name will be returned.- Parameters:
name
- name of column- Returns:
- index of column or -1 if it does not exist.
-
open
void open()Opens the reader or resets it. -
reset
void reset()Resets the reader. -
close
void close()Closes the reader. -
registerCommentCallBack
Registers a comment callback. The callback will be executed when a comment is detected in input. Note that not all implementations actually support comments.- Parameters:
callback
- callback to be registered
-
unregisterCommentCallBack
Unregisters a comment callback. Note that not all implementations actually support comments.- Parameters:
callback
- callback to be unregistered
-
setMinimumColumnCount
void setMinimumColumnCount(int length)Sets the minimum number of columns to be returned byIterator.next()
.- Parameters:
length
- number of columns
-
getMinimumColumnCount
int getMinimumColumnCount()Returns the minimum number of columns to be returned byIterator.next()
.- Returns:
- length number of columns
-