我已经解析了一个编码类型为UTF-8的xml文件。它解析得很好。
我没有更改 xml 文件中的任何编码类型。
UTF-8 的 xml header 如下所示:
<?xml version="1.0" encoding="UTF-8"?>
以上格式没有错误!!!
假设我有另一个文件来检查格式是否正确,其标题如下:
<?xml version="1.0" encoding="UTF-16"?>
如何解决这个错误?
最佳答案
Java xml 解析器通常接收包装在 InputSource 对象中的输入。这可以使用 Reader 参数来构造,该参数对给定的字符集进行字符解码。
InputStream in = ...
InputSource is = new InputSource(new InputStreamReader(in, "utf-16"));
对于“utf-16”字符集,流应以字节顺序标记开头,如果不是这种情况,请使用“utf-16le”或“utf-16be”。
关于java - 如何使用Java检查编码类型为UTF-16的xml文件的格式正确性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21227797/