有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

用java创建csv文件

我在尝试将数据插入csv文件时遇到了一个由引号引起的问题。 我有两个元素:20英寸和BI。 看完这句话后:

writers[k].write("\"" + tablelist.get(k).get(i)[j] + "\",");

它们将列为:

"20",","BI"

在csv文件中,它将在单元格中显示为20“,BI”,而不是两个单独的元素

有谁能给我一些解决这个问题的建议吗


共 (3) 个答案

  1. # 2 楼答案

    使用不同的引号字符,然后"。您可以配置在打开csv文件时将哪个字符视为引号

    而不是这个

    writers[k].write("\"" + tablelist.get(k).get(i)[j] + "\",");
    

    添加一个引号字符,然后选择一个你不太可能像这样进入数据的字符

    String quote = "|";
    writers[k].write(quote + tablelist.get(k).get(i)[j] + quote +",");
    

    然后,当您打开这个(取决于程序)时,您可以对其进行配置,以便|用作引号

    在Libre Office中,当您双击csv文件时,它会询问您

    在MS Excel(取决于版本)中,您打开Excel,然后从文本中导入,然后它会给您选择的选项

  2. # 3 楼答案

    呃。。。使用opencsv,在任何情况下都不要试图自己解析或编写CSV。解决的边缘问题太多了。如果要追加,首先read the CSV in,然后将字符串数组添加到列表中,然后write it out。还有其他用于Java的CSV库以类似的方式工作