我们正在使用JAXB解析XML文档,但出现了以下错误:
这到底是什么意思,我们该如何解决??
我们正在执行以下代码:
[org.xml.sax.SAXParseException: Invalid byte 1 of 1-byte UTF-8 sequence.]
at javax.xml.bind.helpers.AbstractUnmarshallerImpl.createUnmarshalException(AbstractUnmarshallerImpl.java:315)
这到底是什么意思,我们该如何解决??
我们正在执行以下代码:
jaxbContext = JAXBContext.newInstance(Results.class);
Unmarshaller unmarshaller = jaxbContext.createUnmarshaller();
unmarshaller.setSchema(getSchema());
results = (Results) unmarshaller.unmarshal(new FileInputStream(inputFile));
更新
问题似乎是由XML文件中的这个“有趣”的字符引起的:¿
为什么会导致这样的问题呢?
更新2
文件中有两个奇怪的字符。它们在文件的中间左右。请注意,该文件是基于数据库中的数据创建的,这些奇怪的字符不知何故进入了数据库。
更新3
以下是完整的XML片段:
<Description><![CDATA[Mt. Belvieu ¿ Texas]]></Description>
更新4
请注意,没有<?xml ...?>
头。
特殊字符的十六进制为BF。
<?xml ...?>
头部和有问题部分的十六进制表示? - axtavt