Package org.apache.fulcrum.parser
Class CSVParser
java.lang.Object
org.apache.fulcrum.parser.DataStreamParser
org.apache.fulcrum.parser.CSVParser
- All Implemented Interfaces:
Iterator<ValueParser>
,org.apache.avalon.framework.logger.LogEnabled
CSVParser is used to parse a stream with comma-separated values and
generate ParameterParser objects which can be used to
extract the values in the desired type.
The class extends the abstract class DataStreamParser and implements initTokenizer with suitable values for CSV files to provide this functionality.
The class (indirectly through DataStreamParser) implements the java.util.Iterator interface for convenience. This allows simple use in a Velocity template for example:
#foreach ($row in $csvfile) Name: $row.Name Description: $row.Description #end
- Version:
- $Id$
- Author:
- Sean Legassick
-
Field Summary
Fields inherited from class org.apache.fulcrum.parser.DataStreamParser
log
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected void
initTokenizer
(StreamTokenizer tokenizer) Initialize the StreamTokenizer instance used to read the lines from the input reader.Methods inherited from class org.apache.fulcrum.parser.DataStreamParser
enableLogging, hasNext, hasNextRow, next, nextRow, readColumnNames, remove, setColumnNames
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
-
Constructor Details
-
CSVParser
Create a new CSVParser instance. Requires a Reader to read the comma-separated values from. The column headers must be set independently either explicitly, or by reading the first line of the CSV values.- Parameters:
in
- the input reader.
-
CSVParser
Create a new CSVParser instance. Requires a Reader to read the comma-separated values from, and a list of column names.- Parameters:
in
- the input reader.columnNames
- a list of column names.
-
CSVParser
Create a new CSVParser instance. Requires a Reader to read the comma-separated values from, a list of column names and a character encoding.- Parameters:
in
- the input reader.columnNames
- a list of column names.characterEncoding
- the character encoding of the input.
-
-
Method Details
-
initTokenizer
Initialize the StreamTokenizer instance used to read the lines from the input reader.- Specified by:
initTokenizer
in classDataStreamParser
- Parameters:
tokenizer
- the StreamTokenizer to use
-