add second parser that uses a standard CSV reader
This commit is contained in:
@@ -18,6 +18,8 @@ import com.fasterxml.jackson.databind.ObjectMapper;
|
||||
|
||||
public final class CsvReaderSettings {
|
||||
|
||||
public static final String ISO_8601 = "ISO-8601";
|
||||
|
||||
private final static ObjectMapper OBJECT_MAPPER = new ObjectMapper();
|
||||
|
||||
public static String stripPrefixDefault(final String value) {
|
||||
@@ -165,6 +167,8 @@ public final class CsvReaderSettings {
|
||||
|
||||
private String separator;
|
||||
|
||||
private Character quoteCharacter = null;
|
||||
|
||||
private ColumnDefinitions columnDefinitions = new ColumnDefinitions();
|
||||
|
||||
private Map<String, String> additionalTags = new HashMap<String, String>();
|
||||
@@ -175,6 +179,8 @@ public final class CsvReaderSettings {
|
||||
|
||||
private String comment = "#";
|
||||
|
||||
private String dateTimePattern = ISO_8601;
|
||||
|
||||
private final List<TagMatcher> firstLineMatcher = new ArrayList<>();
|
||||
|
||||
public CsvReaderSettings() {
|
||||
@@ -282,6 +288,32 @@ public final class CsvReaderSettings {
|
||||
this.firstLineMatcher.add(tagMatcher);
|
||||
}
|
||||
|
||||
/**
|
||||
* The quote character. If null then no quoting is allowed.
|
||||
*
|
||||
* @param quoteCharacter
|
||||
*/
|
||||
public void setQuoteCharacter(final Character quoteCharacter) {
|
||||
this.quoteCharacter = quoteCharacter;
|
||||
}
|
||||
|
||||
/**
|
||||
* The quote character. If null then no quoting is allowed.
|
||||
*
|
||||
* @return the quote character
|
||||
*/
|
||||
public Character getQuoteCharacter() {
|
||||
return quoteCharacter;
|
||||
}
|
||||
|
||||
public String getDateTimePattern() {
|
||||
return dateTimePattern;
|
||||
}
|
||||
|
||||
public void setDateTimePattern(final String dateTimePattern) {
|
||||
this.dateTimePattern = dateTimePattern;
|
||||
}
|
||||
|
||||
public CsvReaderSettings copy() {
|
||||
try {
|
||||
final String json = OBJECT_MAPPER.writeValueAsString(this);
|
||||
@@ -299,6 +331,12 @@ public final class CsvReaderSettings {
|
||||
builder.append(separator);
|
||||
builder.append(", ");
|
||||
}
|
||||
if (quoteCharacter != null) {
|
||||
builder.append("\nquoteCharacter=");
|
||||
builder.append(quoteCharacter);
|
||||
} else {
|
||||
builder.append("\nno quotes");
|
||||
}
|
||||
if (columnDefinitions != null) {
|
||||
builder.append("\ncolumnDefinitions=");
|
||||
builder.append(columnDefinitions);
|
||||
|
||||
Reference in New Issue
Block a user