XML解析失败:格式不符

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了XML解析失败:格式不符相关的知识,希望对你有一定的参考价值。

我的手机一直看着的那个网的,今天打开却出现(XML解析失败:格式不符!)~~超郁闷
请问是怎么回事,要怎么解决啊?

其实解析XML有两种方式,一种叫DOM,一种就是SAX。
其中DOM的解析方式是一次性把XML读入到内存中,然后按照XML的结构在内存中生成一颗DOM树,这样你可以从XML的根节点开始访问XML的每一个节点。但是种方式因为要把XML一次性全部读入内存,所以内存的消耗是很大的。如果XML很大的话,不建议使用这种方式。
SAX比较灵活,它是一个标签,一个标签的解析,每解析一个标签的时候就会调用相应的一个函数。已经解析过的标签,就被程序丢掉了(除非用你自己的方式把它记下来)。给你举个例子,比如有这样一个xml文件:
<年级 名称=“一年级”>
<班级 名称=“一班”>
<班主任 名称=“XXX”/>
</班级>
<班级 名称=“二班”>
<班主任 姓名=“YYY”>
</班级>
</年级>
对于这个XML,SAX的解析方式是,首先遇到"年级"标签,然后调用函数startElement(),在这个方法里,你可以读取“年级”标签的名称是“一年级”,然后往下执行,读到了班级,这个时候程序会再次自动的触发startElement()方法,然后得到班级的名称,这个时候已经读取的“年级”的信息就不存在了。后面的标签以此类推。
当读到</班级>标签的时候,程序会自动出发endElement()方法。当然读到</年级>的时候也会触发这个方法。
总的来说,程序对XML每做一次进一步的操作,就会触发一个相应的函数,触发的这个函数叫做回调函数(其实不知道它是回调函数也没关系)。个人感觉整个解析的过程就类似于对栈的操作。
解释的很粗浅,因为如果真正要把这个问题说明白很麻烦,不过希望这个解释能给你帮助 :)
请参考
参考技术A 跟你手机没关系,可能是服务器XML文件节点设置错误了。
不用担心,等等就好了:)
参考技术B 服务器的问题吧,跟你手机又什么关系? 参考技术C 如果你浏览其他的网站都挺好,那么就不是你手机的问题,是那个网站的代码问题,别郁闷了!估计网站那边很快就会解决的~本回答被提问者采纳

以上是关于XML解析失败:格式不符的主要内容,如果未能解决你的问题,请参考以下文章

解析格式错误的 XML

DM4J 解析XML文件

PB如何解析XML文件

如何解析XML文件

pom.xml错误怎么解决

xml解析多个结点方法(C#)