廖雪峰Java14Java操作XML和JSON-1XML-1XML介绍
1.XML:可扩展标记语言(extensible Markup Language)
- 是一种数据表示格式
- 可以描述非常复杂的数据结构
- 用于存储和传输数据
1.1XML特点:
- 1.纯文本,默认utf-8编码
- 2.可嵌套,是和表示结构化数据
1.2XML应用:
文件形式,如book.xml
网络传输,xml格式的内容
<?xml version="1.0" encoding="UTF-8"?><!--XML声明,version只能写1.0,encoding默认utf-8-->
<!DOCTYPE note SYSTEM "book.dtd"><!--文档类型定义(DTD指令,可选)-->
<book id="1"><!--有且仅有一个根元素-->
<name>Java技术核心技术</name><!--可以有若干个子元素-->
<author>CayS Hormann</author>
<isbn lang="CN">123456789</isbn><!--元素可以包含属性-->
<tags>
<tag>Java</tag>
<tag>Network</tag>
</tags><!--元素必须正确嵌套-->
<pubDate /><!--空元素用<tag />-->
</book>
XML中的特殊字符
— < < —> & —& " —" , —'
2.验证XML
2.1格式正确的XML:
- XML的格式是正确的
- 可以被解析器正常读取
2.2合法的XML
数据结构可以被DTD或者XSD验证
必须符合若干规则,参见注释
2.3如何验证XML文件的正确性,使用浏览器查看或网站验证即可
2.4XML相关技术 很少用到,了解即可
- DTD和XSD:验证XML结构和数据是否有效
- Namespace:XML节点和属性的名字空间
- XSLT:把XML转化为另一种文本的描述语言
- XPath:一种XML节点查询语言
3.解析XML
两种标准的解析XML的API:
- DOM:一次性读取XML,在内存中表示为树形结构
- SAX:以流的形式读取XML,使用事件回调
4.总结:
- XML是可扩展标记语言的缩写
- 纯文本数据
- 用于表示复杂的结构化数据
- 用于数据的存储和传输
- 缺点:数据庞大,格式复杂
廖雪峰Java14Java操作XML和JSON-1XML-1XML介绍的更多相关文章
- 廖雪峰Java14Java操作XML和JSON-2JSON-2处理JSON
解析JSON JSR 353 API 常用的第三方库 * Jackson * gson * fastjson Jackson: 提供了读写JSON的API JSON和JavaBean可以互相转换 可食 ...
- 廖雪峰Java14Java操作XML和JSON-2JSON-1Json介绍
JSON是一种类似JavaScript对象的数据表示格式 JavaScript Object Notation 去除了JavaScript的执行语句 仅保留数据 JSON格式: 仅保留UTF-8编码 ...
- 廖雪峰Java14Java操作XML和JSON-1XML-4第三方XML库
总结: 使用Jackson可以快速在XML和JavaBean之间互相转换 可使用Annotation定制序列化和反序列化
- 廖雪峰Java14Java操作XML和JSON-1XML-3SAX
SAX:Simple API for XML 基于事件的API import javax.xml.parsers.SAXParser; import javax.xml.parsers.SAXPars ...
- 廖雪峰Java14Java操作XML和JSON-1XML-2DOM
XML是一种数据表示形式. 可以描述非常复杂的数据数据结构 用于传输和传输数据 DOM:Document Object Model DOM模型就是把XML文档作为一个树形结构,从根结点开始,每个节点都 ...
- 廖雪峰js教程笔记9 json
JSON是JavaScript Object Notation的缩写,它是一种数据交换格式. 在JSON出现之前,大家一直用XML来传递数据.因为XML是一种纯文本格式,所以它适合在网络上交换数据.X ...
- iOS:网络编程中三个数据解析协议HTTP、XML、JSON的详细介绍
网络编程:HTTP协议.XML数据协议.JSON数据协议: HTTP: 1.HTTP传输数据有四种方式:Get方式.Post方式.同步请求方式.异步请求方式. 说明:同步和异步请求方式在创建链接对象和 ...
- JavaScript操作XML
JavaScript操作XML (一) JavaScript操作XML是通过XML DOM来完成的.那么什么是XML DOM呢?XML DOM 是: 用于 XML 的标准对象模型 用于 XML 的标准 ...
- java使用dom4j和XPath解析XML与.net 操作XML小结
最近研究java的dom4j包,使用 dom4j包来操作了xml 文件 包括三个文件:studentInfo.xml(待解析的xml文件), Dom4jReadExmple.java(解析的主要类), ...
随机推荐
- Java-Class-C:org.springframework.http.ResponseEntity
ylbtech-Java-Class-C:org.springframework.http.ResponseEntity 1.返回顶部 1. org.springframework.http Clas ...
- CSS3:目录
ylbtech-CSS3:目录 1.返回顶部 1. http://www.runoob.com/css3/css3-tutorial.html 2. 2.返回顶部 3.返回顶部 4.返回顶部 ...
- AsyncCallback IAsyncResult
using System; using System.Threading; using System.Collections.Generic; using System.Windows.Forms; ...
- Ansible配置及使用
使用公私钥实现ssh无密码登录 生成公钥和私钥 ssh-keygen -t rsa 公钥相当于锁id_rsa.pub,私钥相当于钥匙id_rsa 借用ssh-copy-id工具实现无密码登录 ssh- ...
- JS对象 charAt() 方法可返回指定位置的字符。返回的字符是长度为 1 的字符串。
返回指定位置的字符 charAt() 方法可返回指定位置的字符.返回的字符是长度为 1 的字符串. 语法: stringObject.charAt(index) 参数说明: 注意:1.字符串中第一个字 ...
- Trip
Trip 给出一个长度为n序列\(\{a_i\}\),长度为m的序列\(\{b_i\}\),求它们的不同lcs序列按字典序输出,\(n,m\leq 80\),lcs不超过1000个,字符为26个小写字 ...
- soj115 御坂网络
题意:平面上有n个A发射点和m个B发射点,可以选择安置相应A/B装置,装置范围是圆,自取半径(要求都相同且<=Rmax).异种要求范围不相交.求装置范围之和(不是并!). 标程: #includ ...
- JavaScript 数据值校验工具类
/** * 数据值校验工具类 */ var checkService = { // 不校验 none: function () { return true; }, //非空校验 isEmpty: fu ...
- day23_5_练习_Calculator_使用正则表达式计算复杂表达式
#!/usr/bin/env python# -*- coding:utf-8 -*-# ------------------------------------------------------- ...
- PAT甲级——A1118 Birds in Forest【25】
Some scientists took pictures of thousands of birds in a forest. Assume that all the birds appear in ...