import com.univocity.parsers.csv.CsvParser; import com.univocity.parsers.csv.CsvParserSettings; import com.univocity.parsers.csv.CsvWriter; import com.univocity.parsers.csv.CsvWriterSettings; import com.univocity.parsers.conversions.Conversions; import com.univocity.parsers.common.ParsingContext; import com.univocity.parsers.common.processor.ObjectRowProcessor; import com.univocity.parsers.common.processor.RowProcessor; import java.io.*; import java.util.List; public class DataConversionExample { public static void main(String[] args) throws IOException { CsvParserSettings parserSettings = new CsvParserSettings(); parserSettings.getFormat().setLineSeparator(" "); CsvParser parser = new CsvParser(parserSettings); List<String[]> rows = parser.parseAll(new FileReader("input.csv")); ObjectRowProcessor rowProcessor = new ObjectRowProcessor(); rowProcessor.convertFields(Conversions.toBigDecimal()).set("price"); rowProcessor.convertFields(Conversions.toDate("yyyy-MM-dd")).set("date"); CsvWriterSettings writerSettings = new CsvWriterSettings(); CsvWriter writer = new CsvWriter(new FileWriter("output.csv"), writerSettings); writer.writeHeaders(parser.getContext().headers()); RowProcessor processor = new RowProcessor(); processor.addRowProcessor(rowProcessor); processor.convertAll(rows, parser.getContext()); for (String[] row : rows) { writer.writeRow(row); } writer.close(); } }


上一篇:
下一篇:
切换中文