问题就在这里。我有一个 java 程序,可以将 XML
转换为 CSV
。我的 xml 中的元素标签之一如下所示。
<person-name>Greg kaménez</person-name>.
我的解析器能够正确解析它。但转换后,当我将其写入 csv 文件并在 mcsft excel 中打开该文件时,我看到 "Greg kaménez"
作为单元格值,而不是 Greg kaménez。
我还注意到,当我在 Eclipse IDE 中的文本编辑器中打开相同的 csv 文件时,它会正确显示名称“Greg kaménez
”。
这是我将字符串写入 csv 的代码片段:
String csv = ""x","y","Greg kaménez","z"";
String fileName = "output.csv";
File csvFile = new File(fileName);
String jobId = null;
BufferedWriter writer = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(csvFile), "UTF-8"));
writer.append(csv);
writer.close();
最佳答案
Excel 默认使用 Windows-1252。因此,如果您想在 Excel 中读取 CSV,请使用
BufferedWriter writer = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(csvFile), "Windows-1252"));
关于java - CSV 转换无法识别特殊字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19641369/