【问题标题】:opencsv writing file with some quoted elements and others unquoted带有一些引用元素和其他未引用元素的 opencsv 写入文件
【发布时间】:2013-01-25 23:15:42
【问题描述】:

有没有人有在 Java 中使用 opencsv 编写 csv 文件的经验,其中只有一些元素需要双引号?我要测试的所需输出是制作一个文件,内容如下:

1,"two",three

但是当我尝试以下代码时

writer = new CSVWriter(new FileWriter("yourfile.csv"), ',',CSVWriter.NO_QUOTE_CHARACTER);
String[] entries = {"1","\"two\"","three"};
writer.writeNext(entries);
writer.close();

出现以下输出

1,""two"",three

想法?

【问题讨论】:

    标签: java opencsv


    【解决方案1】:

    这些额外的引号是OpenCSV 使用的转义字符。您需要使用overloaded constructor 来关闭这些:

    writer = new CSVWriter(new FileWriter("yourfile.csv"), ',', 
               CSVWriter.NO_QUOTE_CHARACTER, CSVWriter.NO_ESCAPE_CHARACTER);
    ...
    

    输出:

    1,"two",three
    

    【讨论】:

    • “无转义字符”参数会严重混淆字符串字段中需要转义的字符
    猜你喜欢
    • 1970-01-01
    • 2010-12-16
    • 1970-01-01
    • 2010-10-16
    • 1970-01-01
    • 2015-11-03
    • 2021-11-04
    • 2011-07-27
    • 2012-07-11
    相关资源
    最近更新 更多