![]() |
1
31
使用FileOutputStream而不是FileWriter。 后者应用自己的编码,几乎可以肯定不是UTF-8(根据您的平台,它可能是Windows-1252或is-8859-1)。 编辑(现在我有时间了): 不带序言的XML文档可以编码为UTF-8或UTF-16。使用序言,可以指定其编码(序言只能包含US-ASCII字符,因此序言始终可读)。 读者处理人物;它将解码底层InputStream的字节流。因此,当您将Reader传递给解析器时,您告诉它您已经处理了编码,因此解析器将忽略序言。当你传递一个InputStream(读取字节)时,它不会做出这种假设,而是会查看序言来定义编码——如果没有,则默认为UTF-8/UTF-16。 我从未尝试读取用UTF-16编码的文件。我怀疑解析器将查找字节顺序标记(BOM)作为文件的前2个字节。 |
![]() |
2
5
当然
最有可能的问题是字符的原始来源被定义为
|
|
user29759326 · 如何返回递归函数中的最后一个值? 5 月前 |
|
malife89 · 将java中的字符串读取为正确的日期格式 5 月前 |
![]() |
Tim · 在java中,有没有更快的方法将字节数组写入文件? 5 月前 |
![]() |
rudraraj · java中未声明最终变量 6 月前 |
![]() |
Bala Ji · 以下BFS的实施效率如何? 6 月前 |