Java csv写入程序转义字符问题
我的应用程序我想用ecapse字符编写csv编写器问题 下列各项的输出Java csv写入程序转义字符问题,java,csv,Java,Csv,我的应用程序我想用ecapse字符编写csv编写器问题 下列各项的输出 "art_number test" "category" "testtest" 但是我想要像 "art_number\ntest" "category" "testtest" 这是我的密码: public static void main(String[] args) throws IOException { CSVWriter writer = new CSVWriter(new FileWr
"art_number
test" "category" "testtest"
但是我想要像
"art_number\ntest" "category" "testtest"
这是我的密码:
public static void main(String[] args) throws IOException {
CSVWriter writer = new CSVWriter(new FileWriter("D:/temp/test.csv"), '\t' );
// int i = 0;
List<String[]> csvRows = new ArrayList<String[]>();
String[] header = new String[17];
header[0] = "art_number\ntest";
header[1] = "category";
header[2] = "testtest";
writer.writeNext(header);
writer.close();
publicstaticvoidmain(字符串[]args)引发IOException{
CSVWriter writer=新的CSVWriter(新的文件编写器(“D:/temp/test.csv”),“\t”);
//int i=0;
List csvRows=new ArrayList();
字符串[]头=新字符串[17];
标题[0]=“艺术编号\n测试”;
标题[1]=“类别”;
标题[2]=“testtest”;
writer.writeNext(标题);
writer.close();
基本上\n
被视为新行字符,您可以使用\
对其进行转义,如下所示:
header[0] = "art_number\\ntest";
编辑 在将其写入csv文件之前,只需更新此处的值
for (int i=0;i<header.length;i++) {
header[i]=header[i].replaceAll("\\n", "\\\\n");
}
writer.writeNext(header);
for(int i=0;我不更改现有数据您能给我另一个解决方案吗?很好,您不想更改数据,但为什么?共享CSVWriter
类的代码以及writeNext()中隐藏的内容
方法。尝试了解根本原因。因为整个数据都是动态生成的,所以很难处理,所以我要求另一种解决方案