gpt4 book ai didi

java - 在 CSV 写入中转义 ',' 不起作用

转载 作者:行者123 更新时间:2023-12-01 11:13:32 25 4
gpt4 key购买 nike

我尝试按照下面的链接解决方案 String containing comma inputting in to the csv file

for(String data : getCSVData())
{
if (data != null && data.contains(",")) {
data = "\"" + data + "\"";
}
}

但如果数据类似于 1,234(String),则生成过程类似于 ""1,234""。所以这些数据放在两个不同的单元格中。

输出如下

enter image description here

最佳答案

用双引号转义应该可以使其工作,您可能不会通过获取 CSV 数据来更新集合以反射(reflect)更改。请参阅下面的代码,对我来说工作正常。

try {
List<String> csvData = new ArrayList<String>();
csvData.add("test");
csvData.add("test,ing");
csvData.add(",testing");

List<String> newCsvData = new ArrayList<String>();

for (String str : csvData) {
if(str.indexOf(",") >= 0){
str = "\""+str+"\"";
}
newCsvData.add(str);
}

String csv = StringUtils.join(newCsvData, ',');

System.out.println(csv);

PrintWriter out = new PrintWriter("D://filename.csv");

out.println(csv);

out.close();
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

输出:

enter image description here

关于java - 在 CSV 写入中转义 ',' 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32111816/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com