Xml

1.Xml eXtendsible marup Language 可扩展标记语言
xml的作用:
(1)可以用来保存数据
(2)可以用来做配置文件
(3)数据传输载体
文档结构
在这里插入图片描述
定义xml
其实就是一个文件,文件后缀为.xml
(1)文档声明

<? ?> 如: <? xml version="1.0" ?> <?xml version="1.0" encoding="gbk" ?>

encodiing :解析xml中的文字的时候,使用什么编码来翻译

<?xml version="1.0" encoding="gbk" standalone="no"?>

standalone : no–该文档会依赖关联其他文档,yes–这是一个独立的文档
##encoding解析
》在解析这个xml的时候,使用什么编码去解析,–解码
电脑上的无人能及在保存的时候并不是真正的存储文字,而是存储这些文字对应的二进制到底是多少呢?根据文件使用的编码来得到
》默认文件保存的时候使用的是gbk编码保存,所有要想让我们的xml能够正常的显示中,有两种解决办法:
(1)让encoding也是gbk,或者gb2312
(2)如果encoding是Utf-8,那么保存文件的时候也必须是utf-8,
(3)保存的时候见到的ANSI,对应的其实是我们的本地编码gbk
为了通用,建议使用utf-8编码保存,以及encoding都是utf-8
##元素的定义(标签)
(1)其实就是里面的标签,<>括起来的都叫元素,成对出现 如下:
(2)文档声明下来的第一个元素叫做根元素(根标签),
(3)标签里面可以嵌套标签
(4)空标签:既是开始,也是结束。如:

张三


(5)标签可以自定义。
(6)标签的命名规则:
名称可以包含字母、数字以及其他的字符
名称不能以数字或者标点符号开始
名称不能以字符“xml”(或者XML,Xml)开始
名称不能包含空格
命名尽量简单,做到见名知意
简单元素 & 复杂元素
简单元素:元素里面包含了普通的文字
复杂元素:元素里面还可以嵌套其他的元素
##属性的定义
定义在元素里面,<元素名称 属性名称=“属性的值”> </元素名称>
在这里插入图片描述
注释:
快捷键:ctrl +shift +/
xml的注释,不允许放置在文档的第一行,必须在文档声明的下面
Xml XDATA区

非法字符:
严格地讲,在xml中仅有字符“<”和“&”是非法的,引号和大于号是合法的,但是把它们替换为实体引用是个好的习惯
< &lt;

>
& &amp
如果基段字符串里面有过多的字符,并且里面包含了类似标签或者关键字的这种文字,不想让xml的解析器去解析,那么可以使用CDATA来包装,不过这个CDATA一般比较少看到,通常在服务器给客户端返回数据的时候才会看到。
<![CDATA[ "我爱黑马训练营]]>
##XML解析
其实就是获取元素里面的字符数据或者属性数据
xml的解析方式:
操作xml文档,将文档中的数据读取到内存中
操作xml文档:
(1)解析(读取):将文档中的数据读取到内存中
(2)写入:将内存中的数据保存到xml文档中,持久化的存储
解析xml的方式:
(1)DOM方式(服务端):将标记语言文档一次性加载进内存,在内存中形成一颗dom树
优点:操作方便,可以对文档进行CRUD(增删改查)的所有操作
缺点:占内存
(2)SAX方式(安卓,移动端):逐行读取,基于事件驱动
优点:不占内存
缺点:只能读取,不能增删改
xml常见的解析器
(1)JAXP:sun公司提供的解析器,支持dom和sax两种思想
(2)DOM4J:一款非常优秀的解析器
(3)Jsoup:jsoup是一款java和html解析器,可直接解析某个URL地址,HTML文本内容,它提供了一套非常省力的API,可通过DOM,css以及类似于jQuery的操作方法来取出和操作数据
(5)PULL:Android操作系统内置的解析器,sax方式的
Jsoup的操作
步骤:
(1)导入jar包
(2)获取Document对象
(3)获取对应的标签Element对象
(4)获取对象

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值