使用 java 在 csv 中插入空行
Inserting blank line in csv using java
我想使用 java 在 csv 中插入一个空行。我写了以下代码:
CSVFormat csvFileFormat = CSVFormat.DEFAULT.withRecordSeparator("\n").withEscape('\');
FileWriter fileWriter = new FileWriter(csvFile);
CSVPrinter csvFilePrinter = new CSVPrinter(fileWriter,csvFileFormat);
csvFilePrinter.printRecord("data1");
csvFilePrinter.printRecord("\n");
csvFilePrinter.printRecord("data2");
当我在 notepad++ 中打开这个生成的 CSV 文件时,出现了 2 个空白行:
data1
"
"
data2
如何得到一个空白行?
我想用 csvFilePrinter.println();
替换 csvFilePrinter.printRecord("\n");
就可以了。
println()
将输出行分隔符,因此您将得到完全没有引号的空行。
希望对您有所帮助!
尝试 csvFilePrinter.printRecord("");
csvFilePrinter.println();
printRecord
会自动转义该行。您不需要额外的转义字符。
printRecord
在数据后打印记录分隔符,在本例中为换行符。
然后你打印一个换行符,它被打印为一个包含另一个换行符的字符串,它在不同的行上给你这两个双引号。
只需删除打印换行符的那个,或者,如果您真的想要那个空行,请使用 csvFilePrinter.println()
它将输出记录分隔符(在您的情况下,"\n"
)。
您使用
定义 CSVFilePrinter
CSVFormat.DEFAULT.withRecordSeparator("\n")
因此,对于每条记录,将追加一个额外的 \n
。然后打印三个记录:"data1", "\n", "data2"
这将导致 "data1\n\n\ndata2\n",这正是您得到的结果。
只需将第二条记录替换为“”即可。
我想使用 java 在 csv 中插入一个空行。我写了以下代码:
CSVFormat csvFileFormat = CSVFormat.DEFAULT.withRecordSeparator("\n").withEscape('\');
FileWriter fileWriter = new FileWriter(csvFile);
CSVPrinter csvFilePrinter = new CSVPrinter(fileWriter,csvFileFormat);
csvFilePrinter.printRecord("data1");
csvFilePrinter.printRecord("\n");
csvFilePrinter.printRecord("data2");
当我在 notepad++ 中打开这个生成的 CSV 文件时,出现了 2 个空白行:
data1
"
"
data2
如何得到一个空白行?
我想用 csvFilePrinter.println();
替换 csvFilePrinter.printRecord("\n");
就可以了。
println()
将输出行分隔符,因此您将得到完全没有引号的空行。
希望对您有所帮助!
尝试 csvFilePrinter.printRecord("");
csvFilePrinter.println();
printRecord
会自动转义该行。您不需要额外的转义字符。
printRecord
在数据后打印记录分隔符,在本例中为换行符。
然后你打印一个换行符,它被打印为一个包含另一个换行符的字符串,它在不同的行上给你这两个双引号。
只需删除打印换行符的那个,或者,如果您真的想要那个空行,请使用 csvFilePrinter.println()
它将输出记录分隔符(在您的情况下,"\n"
)。
您使用
定义 CSVFilePrinterCSVFormat.DEFAULT.withRecordSeparator("\n")
因此,对于每条记录,将追加一个额外的 \n
。然后打印三个记录:"data1", "\n", "data2"
这将导致 "data1\n\n\ndata2\n",这正是您得到的结果。
只需将第二条记录替换为“”即可。