我在网上或书中找不到任何关于此的信息,这是一本大书! Java中有没有办法在输出CSV文件时更改默认分隔符。我想将它从逗号更改为\ t?我想这样做,因为当我输入包含逗号的字符串时,他们会转到下一个单元格,这很痛苦。
任何帮助都会非常棒!
詹姆斯
答案 0 :(得分:1)
您在使用什么来创建CSV文件?如果您只是使用基本的Java write-to-file方法,那么您应该能够选择分隔符所需的内容。如果您使用的是openCSV之类的第三方API,则应该有一个命令来设置分隔符。
答案 1 :(得分:1)
CSV绝不是标准,Java没有标准支持。难怪你的大书不会谈论它。
我建议使用OpenCSV来写CSV。 CSVWriter's constructor有一个分隔符参数。
编辑:
您在一小时前刚刚提出的问题中得到了相同的答案:Write to CSV that contains comma
答案 2 :(得分:0)
虽然这是非常晚的答案,但它可能有助于某人
只需附加" sep = \ t"在CSV字符串之前。
a.e:在Java Servlet中
public class ExportCSV extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/CSV");
response.setHeader("Content-Disposition", "attachment; fileName=Test.csv");
OutputStream lOutputStream = response.getOutputStream(); lOutputStream.write("sep=\t".getBytes());
lOutputStream.write(System.getProperty(LINE_SEPERATOR).getBytes());
lOutputStream.write(<CSV Byte Array>);
}
}
N.B:此代码未经过测试,仅供参考。