List of usage examples for org.apache.commons.csv CSVFormat DEFAULT
CSVFormat DEFAULT
To view the source code for org.apache.commons.csv CSVFormat DEFAULT.
Click Source Link
From source file:org.apache.camel.dataformat.csv.CsvRecordConvertersTest.java
@Before public void setUp() throws Exception { CSVFormat format = CSVFormat.DEFAULT.withHeader("A", "B", "C"); CSVParser parser = new CSVParser(new StringReader("1,2,3"), format); List<CSVRecord> records = parser.getRecords(); record = records.get(0);//from www. ja va 2 s . c o m }
From source file:org.apache.flink.batch.connectors.pulsar.serialization.CsvSerializationSchema.java
@Override public byte[] serialize(T t) { StringWriter stringWriter;//from w w w .j a va 2 s .c o m try { Object[] fieldsValues = new Object[t.getArity()]; for (int index = 0; index < t.getArity(); index++) { fieldsValues[index] = (t.getField(index)); } stringWriter = new StringWriter(STRING_WRITER_INITIAL_BUFFER_SIZE); CSVFormat.DEFAULT.withRecordSeparator("").printRecord(stringWriter, fieldsValues); } catch (IOException e) { throw new RuntimeException("Error while serializing the record to Csv", e); } return stringWriter.toString().getBytes(); }
From source file:org.apache.logging.log4j.core.layout.CsvLogEventLayoutTest.java
@Test public void testHeaderFooter() { final String header = "# Header"; final String footer = "# Footer "; final AbstractCsvLayout layout = CsvLogEventLayout.createLayout(ctx.getConfiguration(), "Excel", null, null, null, null, null, null, null, header, footer); testLayout(CSVFormat.DEFAULT, layout, header, footer); }
From source file:org.apache.logging.log4j.core.layout.CsvLogEventLayoutTest.java
@Test public void testLayoutDefault() throws Exception { testLayout(CSVFormat.DEFAULT); }
From source file:org.apache.nifi.csv.CSVUtils.java
public static CSVFormat createCSVFormat(final PropertyContext context) { final String formatName = context.getProperty(CSV_FORMAT).getValue(); if (formatName.equalsIgnoreCase(CUSTOM.getValue())) { return buildCustomFormat(context); }/*from www . ja v a 2 s . c om*/ if (formatName.equalsIgnoreCase(RFC_4180.getValue())) { return CSVFormat.RFC4180; } else if (formatName.equalsIgnoreCase(EXCEL.getValue())) { return CSVFormat.EXCEL; } else if (formatName.equalsIgnoreCase(TDF.getValue())) { return CSVFormat.TDF; } else if (formatName.equalsIgnoreCase(MYSQL.getValue())) { return CSVFormat.MYSQL; } else if (formatName.equalsIgnoreCase(INFORMIX_UNLOAD.getValue())) { return CSVFormat.INFORMIX_UNLOAD; } else if (formatName.equalsIgnoreCase(INFORMIX_UNLOAD_CSV.getValue())) { return CSVFormat.INFORMIX_UNLOAD_CSV; } else { return CSVFormat.DEFAULT; } }
From source file:org.apache.nifi.csv.TestCSVRecordReader.java
@Test public void testMultipleRecordsEscapedWithSpecialChar() throws IOException, MalformedRecordException { char delimiter = StringEscapeUtils.unescapeJava("\u0001").charAt(0); final CSVFormat format = CSVFormat.DEFAULT.withFirstRecordAsHeader().withTrim().withQuote('"') .withDelimiter(delimiter);// w w w .j a va 2 s. c o m final List<RecordField> fields = getDefaultFields(); fields.replaceAll(f -> f.getFieldName().equals("balance") ? new RecordField("balance", doubleDataType) : f); final RecordSchema schema = new SimpleRecordSchema(fields); try (final InputStream fis = new FileInputStream( new File("src/test/resources/csv/multi-bank-account_escapedchar.csv")); final CSVRecordReader reader = createReader(fis, schema, format)) { final Object[] firstRecord = reader.nextRecord().getValues(); final Object[] firstExpectedValues = new Object[] { "1", "John Doe", 4750.89D, "123 My Street", "My City", "MS", "11111", "USA" }; Assert.assertArrayEquals(firstExpectedValues, firstRecord); final Object[] secondRecord = reader.nextRecord().getValues(); final Object[] secondExpectedValues = new Object[] { "2", "Jane Doe", 4820.09D, "321 Your Street", "Your City", "NY", "33333", "USA" }; Assert.assertArrayEquals(secondExpectedValues, secondRecord); assertNull(reader.nextRecord()); } }
From source file:org.apache.nifi.csv.TestJacksonCSVRecordReader.java
@Test public void testMultipleRecordsEscapedWithSpecialChar() throws IOException, MalformedRecordException { char delimiter = StringEscapeUtils.unescapeJava("\u0001").charAt(0); final CSVFormat format = CSVFormat.DEFAULT.withFirstRecordAsHeader().withTrim().withQuote('"') .withDelimiter(delimiter);/*from w w w . j a v a 2s .co m*/ final List<RecordField> fields = getDefaultFields(); fields.replaceAll(f -> f.getFieldName().equals("balance") ? new RecordField("balance", doubleDataType) : f); final RecordSchema schema = new SimpleRecordSchema(fields); try (final InputStream fis = new FileInputStream( new File("src/test/resources/csv/multi-bank-account_escapedchar.csv")); final JacksonCSVRecordReader reader = createReader(fis, schema, format)) { final Object[] firstRecord = reader.nextRecord().getValues(); final Object[] firstExpectedValues = new Object[] { "1", "John Doe", 4750.89D, "123 My Street", "My City", "MS", "11111", "USA" }; Assert.assertArrayEquals(firstExpectedValues, firstRecord); final Object[] secondRecord = reader.nextRecord().getValues(); final Object[] secondExpectedValues = new Object[] { "2", "Jane Doe", 4820.09D, "321 Your Street", "Your City", "NY", "33333", "USA" }; Assert.assertArrayEquals(secondExpectedValues, secondRecord); assertNull(reader.nextRecord()); } }
From source file:org.apache.nifi.csv.TestWriteCSVResult.java
@Test public void testDataTypes() throws IOException { final CSVFormat csvFormat = CSVFormat.DEFAULT.withQuoteMode(QuoteMode.ALL).withRecordSeparator("\n"); final StringBuilder headerBuilder = new StringBuilder(); final List<RecordField> fields = new ArrayList<>(); for (final RecordFieldType fieldType : RecordFieldType.values()) { if (fieldType == RecordFieldType.CHOICE) { final List<DataType> possibleTypes = new ArrayList<>(); possibleTypes.add(RecordFieldType.INT.getDataType()); possibleTypes.add(RecordFieldType.LONG.getDataType()); fields.add(new RecordField(fieldType.name().toLowerCase(), fieldType.getChoiceDataType(possibleTypes))); } else {// w ww. j av a2s . c o m fields.add(new RecordField(fieldType.name().toLowerCase(), fieldType.getDataType())); } headerBuilder.append('"').append(fieldType.name().toLowerCase()).append('"').append(","); } final RecordSchema schema = new SimpleRecordSchema(fields); final ByteArrayOutputStream baos = new ByteArrayOutputStream(); final long now = System.currentTimeMillis(); try (final WriteCSVResult result = new WriteCSVResult(csvFormat, schema, new SchemaNameAsAttribute(), baos, RecordFieldType.DATE.getDefaultFormat(), RecordFieldType.TIME.getDefaultFormat(), RecordFieldType.TIMESTAMP.getDefaultFormat(), true, "UTF-8")) { final Map<String, Object> valueMap = new HashMap<>(); valueMap.put("string", "abc?123"); valueMap.put("boolean", true); valueMap.put("byte", (byte) 1); valueMap.put("char", 'c'); valueMap.put("short", (short) 8); valueMap.put("int", 9); valueMap.put("bigint", BigInteger.valueOf(8L)); valueMap.put("long", 8L); valueMap.put("float", 8.0F); valueMap.put("double", 8.0D); valueMap.put("date", new Date(now)); valueMap.put("time", new Time(now)); valueMap.put("timestamp", new Timestamp(now)); valueMap.put("record", null); valueMap.put("choice", 48L); valueMap.put("array", null); final Record record = new MapRecord(schema, valueMap); final RecordSet rs = RecordSet.of(schema, record); result.write(rs); } final String output = new String(baos.toByteArray(), StandardCharsets.UTF_8); headerBuilder.deleteCharAt(headerBuilder.length() - 1); final String headerLine = headerBuilder.toString(); final String[] splits = output.split("\n"); assertEquals(2, splits.length); assertEquals(headerLine, splits[0]); final String values = splits[1]; final StringBuilder expectedBuilder = new StringBuilder(); expectedBuilder.append("\"abc?123\",\"true\",\"1\",\"c\",\"8\",\"9\",\"8\",\"8\",\"8.0\",\"8.0\","); final String dateValue = getDateFormat(RecordFieldType.DATE.getDefaultFormat()).format(now); final String timeValue = getDateFormat(RecordFieldType.TIME.getDefaultFormat()).format(now); final String timestampValue = getDateFormat(RecordFieldType.TIMESTAMP.getDefaultFormat()).format(now); expectedBuilder.append('"').append(dateValue).append('"').append(','); expectedBuilder.append('"').append(timeValue).append('"').append(','); expectedBuilder.append('"').append(timestampValue).append('"').append(','); expectedBuilder.append(",\"48\",,"); final String expectedValues = expectedBuilder.toString(); assertEquals(expectedValues, values); }
From source file:org.apache.nifi.csv.TestWriteCSVResult.java
@Test public void testExtraFieldInWriteRecord() throws IOException { final CSVFormat csvFormat = CSVFormat.DEFAULT.withEscape('\\').withQuoteMode(QuoteMode.NONE) .withRecordSeparator("\n"); final List<RecordField> fields = new ArrayList<>(); fields.add(new RecordField("id", RecordFieldType.STRING.getDataType())); final RecordSchema schema = new SimpleRecordSchema(fields); final Map<String, Object> values = new HashMap<>(); values.put("id", "1"); values.put("name", "John"); final Record record = new MapRecord(schema, values); final ByteArrayOutputStream baos = new ByteArrayOutputStream(); final String output; try (final WriteCSVResult writer = new WriteCSVResult(csvFormat, schema, new SchemaNameAsAttribute(), baos, RecordFieldType.DATE.getDefaultFormat(), RecordFieldType.TIME.getDefaultFormat(), RecordFieldType.TIMESTAMP.getDefaultFormat(), true, "ASCII")) { writer.beginRecordSet();/*from w w w . j av a2s .c om*/ writer.write(record); writer.finishRecordSet(); writer.flush(); output = baos.toString(); } assertEquals("id\n1\n", output); }
From source file:org.apache.nifi.csv.TestWriteCSVResult.java
@Test public void testExtraFieldInWriteRawRecord() throws IOException { final CSVFormat csvFormat = CSVFormat.DEFAULT.withEscape('\\').withQuoteMode(QuoteMode.NONE) .withRecordSeparator("\n"); final List<RecordField> fields = new ArrayList<>(); fields.add(new RecordField("id", RecordFieldType.STRING.getDataType())); final RecordSchema schema = new SimpleRecordSchema(fields); final Map<String, Object> values = new LinkedHashMap<>(); values.put("id", "1"); values.put("name", "John"); final Record record = new MapRecord(schema, values); final ByteArrayOutputStream baos = new ByteArrayOutputStream(); final String output; try (final WriteCSVResult writer = new WriteCSVResult(csvFormat, schema, new SchemaNameAsAttribute(), baos, RecordFieldType.DATE.getDefaultFormat(), RecordFieldType.TIME.getDefaultFormat(), RecordFieldType.TIMESTAMP.getDefaultFormat(), true, "ASCII")) { writer.beginRecordSet();/*from w w w . j ava2 s . c o m*/ writer.writeRawRecord(record); writer.finishRecordSet(); writer.flush(); output = baos.toString(); } assertEquals("id,name\n1,John\n", output); }