拯救跟我一样的初学者:XML到底是什么玩意,用能让初学者听得懂的话

我也是个初学者,看视频在XML里添加来添加去都不知道干嘛用就来百度结果TM的一堆各种名词,根本不是给我这个初学者科普的,但是一堆沙子里也有黄金,我就把我觉得好的解释放在下面。

                              **解释1:**

来源:https://zhidao.baidu.com/question/1893777704454748140.html

简单概括的话就是,xml本身是一种格式规范,是一种包含了数据以及数据说明的文本格式规范。

比如,我们要给对方传输一段数据,数据内容是“too young,too simple,sometimes naive”,要将这段话按照属性拆分为三个数据的话,就是,年龄too young,阅历too simple,结果sometimes naive。
我们都知道程序不像人,可以体会字面意思,并自动拆分出数据,因此,我们需要帮助程序做拆分,因此出现了各种各样的数据格式以及拆分方式。
比如,可以是这样的
数据为“too young,too simple,sometimes naive”
然后按照逗号拆分,第一部分为年龄,第二部分为阅历,第三部分为结果。
也可以是这样的
数据为“too_young**too_simple*sometimes_naive”
从数据开头开始截取前面十一个字符,去掉号并把下划线替换为空格作为第一部分,再截取接下来的十一个字符同样去掉并替换下划线为空格作为第二部分,最后把剩下的字符同样去*号体会空格作为第三部分。
这两种方式都可以用来容纳数据并能够被解析,但是不直观,通用性也不好,而且如果出现超过限定字数的字符串就容纳不了,也可能出现数据本身就下划线字符导致需要做转义。
基于这种情况,出现了xml这种数据格式, 上面的数据用XML表示的话
可以是这样

也可以是这样





两种方式都是xml,都很直观,附带了对数据的说明,并且具备通用的格式规范可以让程序做解析。
如果用json格式来表示的话,就是下面这样
{
“age”:”too young”,
“experience”:”too simple”,
“result”:”sometimes naive”
}
其实数据都是一样的,不同的只是数据的格式而已,同样的数据,我用xml格式传给你,你用xml格式解析出三个数据,用json格式传给你,你就用json格式解析出三个数据,还可以我本地保存的是xml格式的数据,我自己先解析出三个数据,然后构造成json格式传给你,你解析json格式,获得三个数据,再自己构造成xml格式保存起来,说白了,不管是xml还是json,都只是包装数据的不同格式而已,重要的是其中含有的数据,而不是包装的格式。

                                  **解释2** :

来源:
https://zhidao.baidu.com/question/106757380.html?qbl=relate_question_2&word=xml%CE%C4%BC%FE%B8%C9%C2%EF%B5%C4

xml:简单来说是存储和描述数据的.
比如说


Harry Potter
J K. Rowling
2005
29.99


Learning XML
Erik T. Ray
2003
39.95


这个xml描述了一个书城中的两本书,一本是儿童(category=”CHILDREN”)读物作者是J K. Rowling,出版年份是2005,价格是29.99,,另一本是web方面的,作者是Erik T. Ray,出版年份是2003,价格是39.95

                                  **解释3:感觉最棒**

来源:
https://zhidao.baidu.com/question/130175345.html?qbl=relate_question_4&word=xml%CE%C4%BC%FE%B8%C9%C2%EF%B5%C4

1、xml一般用于各种语言、应用程序之间的数据储存、通信
2、可扩展就是说里面的标签可以自己造。不再局限于别人规定好的标签名字、属性名字,而是可以自己起名字。
3、没错,理论上html能做到的,xml都能做到。可是没人这么做。而且也不推荐你在该使用html的地方使用xml。理由是当前浏览器的支持原因。
xml的作用是用来表现数据之间的结构关系。这种结构关系是非常重要的。
xml为程序员提供了一种更通用、更有条理来储存、访问、修改数据的方法。
这种通用性体现在各种语言对xml的支持都是一致的。
这种条理性体现在他成对的标签与标签之间形成的层次关系。
在普通的浏览器中浏览xml,基本上都是出现该xml的内容列表。
但这仅仅是在浏览器中的表现情况。
在其他的应用程序中,如:RSS阅读器、天气预报小插件等,它们对相应的xml的解释就不一样。
要注意,不同的应用程序所需要的xml的标签格式基本是不会完全一样的
比如RSS阅读器和天气预报小插件他们所需要的标签名、属性名、标签之间的层次关系都是不一样的。
现在xml使用广泛是因为它既对程序友好(程序能很方便的生成、提取出里面的数据),也对人类友好(人类可以很方便的手写出xml)。但是冗余信息多,占用体积大也是其弊端。
在没有xml的日子里,程序员想进行进程间数据传递,必须自己设计传输接口,里面牵涉到很多烦人的数据格式等问题,使得程序员不能专注于具体业务的解决。如今xml和各种语言对xml的支持包,把程序员解脱出来了。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值