如题所示,今天遇到这个报错的是在我写一个RMI的时候遇到的。是Client端远程调用接口来查询保存在xml 里面的信息。
<?xml version="1.0" encoding="UTF-8"?>
<teacherinfo>
<teacher name="jay">
<id>00001</id>
<sex>男</sex>
<college>计算机学院</college>
<age>40</age>
</teacher>
<teacher name="王勇">
<id>00002</id>
<sex>男</sex>
<college>经贸学院</college>
<age>42</age>
</teacher>
</teacherinfo>
我Java代码里面是使用了org.w3c.dom.*来解析的。在Eclipse里面没有发现什么问题。当我把.java文件都移出来然后也新建了一个.xml文件复制上述内容放在同一个文件夹里面,用CMD编译去运行的时候就报了题目的错了。
后来去查询一些资料,发现说把"UTF-8"改成"UTF8"就可以解决问题了。我试了一下,的确可以运行了。
但是问题来了,这样改的话,你会发现无法对中文进行操作,查询处理的中文都变成了问号,而且输入的中文也是无效的。
最终解决的方法就是改成:
<?xml version="1.0" encoding="GBK"?>