我有一个要转换为 UTF-8 的 Windows-1252 word 文档。我需要这样做才能将 doc 文件正确转换为 pdf。这就是我目前的做法:
Path source = Paths.get("source.doc");
Path temp = Paths.get("temp.doc");
try (BufferedReader sourceReader = new BufferedReader(new InputStreamReader(new FileInputStream(source.toFile()), "windows-1252"));
BufferedWriter tempWriter = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(temp.toFile()), "UTF-8"))) {
String line;
while ((line = sourceReader.readLine()) != null) {
tempWriter.write(line);
}
}
但是,当我在 Word 中打开转换后的文件 ( temp.doc
) 时,它无法正确显示某些字符。例如,Ü 将变为 ü。
我该如何解决这个问题?当我创建一个新的 BufferedReader(使用 UTF-8 编码)并读取temp
时,字符会在我的 IDE 控制台中正确显示。