java写CSV文件

1.首先pom.xml引入依赖

 <dependency>
   <groupId>com.opencsv</groupId>
   <artifactId>opencsv</artifactId>
   <version>3.10</version>
</dependency>

2.要输出的实体T字段加上注解

@CsvBindByName(column = "标题名")

3.实现方法,dataList要输出的数据,finalPath输出路径包括文件名如: xxx/xxx/xxx.csv

public static void writeCSV(List<T> dataList, String finalPath) {
try {
Writer writer = new FileWriter(finalPath);
writer.write(new String(new byte[] { (byte) 0xEF, (byte) 0xBB, (byte) 0xBF }));
StatefulBeanToCsv beanToCsv = new StatefulBeanToCsvBuilder(writer).withQuotechar(CSVWriter.NO_QUOTE_CHARACTER).withSeparator(CSVWriter.DEFAULT_SEPARATOR).withEscapechar('\\').build();
beanToCsv.write(dataList);
writer.close();
} catch (IOException e) {
log.error("IOException:" + e.toString());
} catch (CsvDataTypeMismatchException e) {
log.error("CsvDataTypeMismatchException:" + e.toString());
} catch (CsvRequiredFieldEmptyException e) {
log.error("CsvRequiredFieldEmptyException:" + e.toString());
}
}


posted @ 2019-01-02 10:02  金州恶汉拉文  阅读(1210)  评论(0编辑  收藏  举报