java - 如何使用Java检查编码类型为UTF-16的xml文件的格式正确性?

标签 java xml

我已经解析了一个编码类型为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/

相关文章:

java - 设置远程 Derby DB : "No suitable driver found" error

sql - 如何转换 SQL Server XML 类型值 (xsi :nil) of DateTime to null

javascript - 将 XML 数据转换为 Json 格式 AngularJS

java - 如何从列表 <String> 中删除换行符

Java 和 XML : Read XML tags with or without namespace

xml - Go:将不同类型的数组/slice 编码到 XML

java - 调用构造函数并初始化数据库名称

Java Eclipse : ComboBox action button based on item selected (e. g.,温度转换)

java - FTP客户端java实现

Java方法重载——歧义