XML报文头必须是<?xml version='1.0' encoding='UTF-8'?>这种格式么???

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了XML报文头必须是<?xml version='1.0' encoding='UTF-8'?>这种格式么???相关的知识,希望对你有一定的参考价值。

XML报文头必须是<?xml version='1.0' encoding='UTF-8'?>这种格式么???
<?xml version='1.0'?>这样写不行么?

1、<?xml version='1.0'?>这样写是可以的。

(1)第一个是XML的声明,其中version属性是必须写的。

(2)encoding属性的值表示用于读取文档的字符集,第二个是一个文档定义的描述。

(3)第三个是一个命名空间的引用,可以关联到特定的命名空间

2、XML简介

(1)XML 指可扩展标记语言(EXtensible Markup Language)。

(2)XML 是一种很像html的标记语言。

(3)XML 的设计宗旨是传输数据,而不是显示数据。

(4)XML 标签没有被预定义。您需要自行定义标签。

(5)XML 被设计为具有自我描述性。

(6)XML 是 W3C 的推荐标准。

3、XML 和 HTML 之间的差异

(1)XML 不是 HTML 的替代。

(2)XML 和 HTML 为不同的目的而设计:

(3)XML 被设计用来传输和存储数据,其焦点是数据的内容。下面是一个便签,存储为XML

(4)HTML 被设计用来显示数据,其焦点是数据的外观。

(5)HTML 旨在显示信息,而 XML 旨在传输信息。

参考技术A <?xml version='1.0'?>这样写可以的。
你下面问的exception,我记得是这样的,xml(各种大小写格式)是不能出现在XML文件的元素名中的。我忘了具体是不能出现在元素名的最前面还是任何位置都不能出现。总之,你给元素起名字时,不要包括xml字样。
参考技术B 常用的DOM或者SAX解析,<?xml version='1.0' encoding='UTF-8'?> 是不会触发事件的!所以有无都无所谓。追问

再问一个:
Caused by: org.dom4j.DocumentException: Error on line 2 of document : The processing instruction target matching "[xX][mM][lL]" is not allowed. Nested exception: The processing instruction target matching "[xX][mM][lL]" is not allowed.
解析报文的时候报这个错,可能是由什么原因引起的???、

参考技术C 楼主是想放入String里面,然后解析?刚试了下,双引号会报错,因为转义,所以一开始用单引号,结果不能定义String换个思路,把报文里面的双引号全部替换单引号,然后OK 参考技术D version是一个版本,告诉你现在的是什么版本,encoding是编码格式utf-8的,<xml>是一个标签,好比html标签一样,告诉你这是一个xml文件。追问

只要这一个属性能正确解析XML报文么???

追答

应该是可以的吧,这个给你 参考一下。
http://blog.csdn.net/zeng622peng/article/details/5791154

追问

再问一个:
Caused by: org.dom4j.DocumentException: Error on line 2 of document : The processing instruction target matching "[xX][mM][lL]" is not allowed. Nested exception: The processing instruction target matching "[xX][mM][lL]" is not allowed.
解析报文的时候报这个错,可能是由什么原因引起的???、

追答

貌似是某个标签写错了,估计是大小写弄错了吧,好好看看。

以上是关于XML报文头必须是<?xml version='1.0' encoding='UTF-8'?>这种格式么???的主要内容,如果未能解决你的问题,请参考以下文章

Jaxb对xml报文头的小修小改

soap设置报文头值 java

XML的学习

XML的学习

XML基础

java如何组装xml报文