如何从 java 中的 csv 文件中的特定字段中删除逗号
How to remove a comma from a particular field in csv file in java
我下面的代码正在打印包含数据的列。我尝试使用 StringEscapeUtils
的 escapeCsv
方法,但逗号仍然不在名称列中。
builder.append("Code,CodeName,CodeDepartment");
builder.append(System.lineSeparator());
Set<Entry<String, CodeDetails>> entrySet = sorted.entrySet();
for(Entry<String, CodeDetails> entry : entrySet)
{
builder.append(entry.getKey());
builder.append(",");
builder.append(entry.getValue().getCodeName());
StringEscapeUtils.escapeCsv(entry.getValue().getCodeName());
builder.append(",");
builder.append(entry.getValue().getCodeDepartment());
}
您似乎没有使用 escapeCsv
的结果。你应该尝试这样的事情:
builder.append(StringEscapeUtils.escapeCsv(entry.getValue().getCodeName()));
此外,如评论中所述,这不会删除逗号 - 它会用双引号将字符串括起来,这对于 CSV 中带有逗号的字符串是正确的。
我下面的代码正在打印包含数据的列。我尝试使用 StringEscapeUtils
的 escapeCsv
方法,但逗号仍然不在名称列中。
builder.append("Code,CodeName,CodeDepartment");
builder.append(System.lineSeparator());
Set<Entry<String, CodeDetails>> entrySet = sorted.entrySet();
for(Entry<String, CodeDetails> entry : entrySet)
{
builder.append(entry.getKey());
builder.append(",");
builder.append(entry.getValue().getCodeName());
StringEscapeUtils.escapeCsv(entry.getValue().getCodeName());
builder.append(",");
builder.append(entry.getValue().getCodeDepartment());
}
您似乎没有使用 escapeCsv
的结果。你应该尝试这样的事情:
builder.append(StringEscapeUtils.escapeCsv(entry.getValue().getCodeName()));
此外,如评论中所述,这不会删除逗号 - 它会用双引号将字符串括起来,这对于 CSV 中带有逗号的字符串是正确的。