public abstract class AbstractDelimiterParser extends AbstractParser
Constructor and Description |
---|
AbstractDelimiterParser(Reader dataSourceReader,
char delimiter,
char qualifier,
boolean ignoreFirstRecord) |
AbstractDelimiterParser(Reader dataSourceReader,
String dataDefinition,
char delimiter,
char qualifier,
boolean ignoreFirstRecord) |
Modifier and Type | Method and Description |
---|---|
protected DataSet |
doParse() |
protected String |
fetchNextRecord(BufferedReader aContentReader,
char aQualifier,
char aDelimiter)
Reads a record from a delimited file.
|
protected char |
getDelimiter() |
protected int |
getLineCount() |
protected char |
getQualifier() |
protected boolean |
isIgnoreFirstRecord() |
protected boolean |
isMultiline(char[] aСhrArray,
boolean aMultiline,
char aQualifier,
char aDelimiter)
Checks if we need to consume one more line because data row was splitted to multiple lines.
|
protected void |
setDelimiter(char delimiter) |
protected void |
setIgnoreFirstRecord(boolean ignoreFirstRecord) |
protected void |
setQualifier(char qualifier) |
protected abstract boolean |
shouldCreateMDFromFile() |
addError, addError, addToCloseReaderList, addToMetaData, closeReaders, getDataDefinition, getDataFileTable, getDataSourceReader, getDataStructureTable, getPzMetaData, init, initStreamOrSource, isAddSuffixToDuplicateColumnNames, isColumnNamesCaseSensitive, isFlagEmptyRows, isHandlingShortLines, isIgnoreExtraColumns, isIgnoreParseWarnings, isInitialised, isNullEmptyStrings, isPreserveLeadingWhitespace, isPreserveTrailingWhitespace, isStoreRawDataToDataError, isStoreRawDataToDataSet, parse, parseAsStream, setAddSuffixToDuplicateColumnNames, setColumnNamesCaseSensitive, setDataDefinition, setDataFileTable, setDataSourceReader, setDataStructureTable, setFlagEmptyRows, setHandlingShortLines, setIgnoreExtraColumns, setIgnoreParseWarnings, setInitialised, setNullEmptyStrings, setPreserveLeadingWhitespace, setPreserveTrailingWhitespace, setPzMetaData, setStoreRawDataToDataError, setStoreRawDataToDataSet, stream
public AbstractDelimiterParser(Reader dataSourceReader, String dataDefinition, char delimiter, char qualifier, boolean ignoreFirstRecord)
public AbstractDelimiterParser(Reader dataSourceReader, char delimiter, char qualifier, boolean ignoreFirstRecord)
protected DataSet doParse()
doParse
in class AbstractParser
protected abstract boolean shouldCreateMDFromFile()
protected char getDelimiter()
protected void setDelimiter(char delimiter)
protected boolean isIgnoreFirstRecord()
protected void setIgnoreFirstRecord(boolean ignoreFirstRecord)
protected char getQualifier()
protected void setQualifier(char qualifier)
protected int getLineCount()
protected String fetchNextRecord(BufferedReader aContentReader, char aQualifier, char aDelimiter) throws IOException
aContentReader
- Open reader being used to read through the fileaQualifier
- Qualifier being used for parseaDelimiter
- Delimiter being used for parseIOException
- if any problem with the stream of data (e.g. file reader)
Improved version of line fetching that solves some of the issues of flatpack parser.protected boolean isMultiline(char[] aСhrArray, boolean aMultiline, char aQualifier, char aDelimiter)
aСhrArray
- aMultiline
- aQualifier
- aDelimiter
- Copyright © 2006–2021 Appendium - Portfolio Financing Platform. All rights reserved.