前言
最近又要做导出数据功能,主要是以Excel
为主,不过比起以前使用的POI导出xls
文件。这次我决定把导出xls
改为csv
,起码不会被WPS
和MS Excel
各种版本不兼容给坑了。 后面在技术选型上决定了使用Apache
的common-csv
。 不过在使用遇到各种奇葩的问题。
问题复盘
相关信息
JDK
版本:oracle jdk 1.8.0_162
common-csv
版本:1.5
问题描述
使用common-csv
的CSVFormat
提供的CSVFormat
常量如:DEFAULT
、EXCEL
等,若一行的第一个值为中文,则这个值会被双引号(""
)包裹。
复盘代码
StringBuilder builder=new StringBuilder();
try(CSVPrinter printer=new CSVPrinter(builder, CSVFormat.EXCEL.withHeader("表头1","表头2"));){
printer.printRecord("测试数据1","测试数据2");
}catch (