/** * Create a new instance of the {@link DelimitedLineTokenizer} class. * * @param delimiter the desired delimiter. This is required */ public DelimitedLineTokenizer(String delimiter) { Assert.notNull(delimiter, "A delimiter is required"); Assert.state(!delimiter.equals(String.valueOf(DEFAULT_QUOTE_CHARACTER)), "[" + DEFAULT_QUOTE_CHARACTER + "] is not allowed as delimiter for tokenizers."); this.delimiter = delimiter; setQuoteCharacter(DEFAULT_QUOTE_CHARACTER); }
tokenizer.setQuoteCharacter(this.quoteCharacter);
@Test public void testTokenizeWithNotDefaultQuotes() { tokenizer.setQuoteCharacter('\''); FieldSet line = tokenizer.tokenize("a,b,'c'"); assertEquals(3, line.getFieldCount()); assertEquals("c", line.readString(2)); }
@Test public void testTokenizeWithUnclosedQuotes() { tokenizer.setQuoteCharacter('\''); FieldSet line = tokenizer.tokenize("a,\"b,c"); assertEquals(3, line.getFieldCount()); assertEquals("\"b", line.readString(1)); assertEquals("c", line.readString(2)); }
/** * Create a new instance of the {@link DelimitedLineTokenizer} class. * * @param delimiter the desired delimiter. This is required */ public DelimitedLineTokenizer(String delimiter) { Assert.notNull(delimiter, "A delimiter is required"); Assert.state(!delimiter.equals(String.valueOf(DEFAULT_QUOTE_CHARACTER)), "[" + DEFAULT_QUOTE_CHARACTER + "] is not allowed as delimiter for tokenizers."); this.delimiter = delimiter; setQuoteCharacter(DEFAULT_QUOTE_CHARACTER); }
private LineTokenizer getTokenizer(String line){ this.columnNames = line.split(DelimitedLineTokenizer.DELIMITER_COMMA); DelimitedLineTokenizer lineTokenizer = new DelimitedLineTokenizer(); lineTokenizer.setQuoteCharacter(DelimitedLineTokenizer.DEFAULT_QUOTE_CHARACTER); lineTokenizer.setStrict(false); lineTokenizer.setNames(columnNames); return lineTokenizer; }
tokenizer.setQuoteCharacter(this.quoteCharacter);
private LineTokenizer getTokenizer(String line){ this.columnNames = line.split(delimiter); DelimitedLineTokenizer lineTokenizer = new DelimitedLineTokenizer(); lineTokenizer.setQuoteCharacter(quoteCharacter); lineTokenizer.setDelimiter(delimiter); lineTokenizer.setStrict(false); lineTokenizer.setNames(columnNames); addColumnNames(); return lineTokenizer; }