Java 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

我的应用程序我想用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 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()中隐藏的内容
方法。尝试了解根本原因。因为整个数据都是动态生成的,所以很难处理,所以我要求另一种解决方案