Package com.opencsv
Class CSVReaderHeaderAware
- java.lang.Object
-
- com.opencsv.CSVReader
-
- com.opencsv.CSVReaderHeaderAware
-
- All Implemented Interfaces:
java.io.Closeable
,java.lang.AutoCloseable
,java.lang.Iterable<java.lang.String[]>
public class CSVReaderHeaderAware extends CSVReader
Handy reader when there's insufficient motivation to use the bean binding but the header mapping is still desired.- Since:
- 4.2
- Author:
- Andre Rosot
-
-
Field Summary
-
Fields inherited from class com.opencsv.CSVReader
br, DEFAULT_KEEP_CR, DEFAULT_MULTILINE_LIMIT, DEFAULT_SKIP_LINES, DEFAULT_VERIFY_READER, errorLocale, hasNext, keepCR, lineReader, linesRead, linesSkipped, multilineLimit, parser, PASSTHROUGH_EXCEPTIONS, peekedLine, READ_AHEAD_LIMIT, recordsRead, skipLines, verifyReader
-
-
Constructor Summary
Constructors Constructor Description CSVReaderHeaderAware(java.io.Reader reader)
Constructor with supplied reader.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.util.Map<java.lang.String,java.lang.String>
readMap()
Reads the next line and returns a map of header values and data values.java.lang.String[]
readNext(java.lang.String... headerNames)
Retrieves a specific data element from a line based on the value of the header.-
Methods inherited from class com.opencsv.CSVReader
close, combineResultsFromMultipleReads, getLinesRead, getMultilineLimit, getNextLine, getParser, getRecordsRead, getSkipLines, isClosed, iterator, keepCarriageReturns, peek, readAll, readNext, readNextSilently, setErrorLocale, skip, validateResult, verifyReader
-
-
-
-
Method Detail
-
readNext
public java.lang.String[] readNext(java.lang.String... headerNames) throws java.io.IOException, CsvValidationException
Retrieves a specific data element from a line based on the value of the header.- Parameters:
headerNames
- Name of the header element whose data we are trying to find- Returns:
- The data element whose position matches that of the header whose value is passed in. Will return null when there are no more data elements.
- Throws:
java.io.IOException
- An error occured during the read or there is a mismatch in the number of data items in a row and the number of header itemsjava.lang.IllegalArgumentException
- If headerName does not existCsvValidationException
- If a custom defined validator fails.
-
readMap
public java.util.Map<java.lang.String,java.lang.String> readMap() throws java.io.IOException, CsvValidationException
Reads the next line and returns a map of header values and data values.- Returns:
- A map whose key is the header row of the data file and the values is the data values. Or null if the line is blank.
- Throws:
java.io.IOException
- An error occured during the read or there is a mismatch in the number of data items in a row and the number of header items.CsvValidationException
- If a custom defined validator fails.
-
-