- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第十四章 XMFile、IO
XML和File I/O
XML定义:
XML(Extensible Markup Language)可扩展性标记语言,它是一种简单的数据存储语言。
使用XML的作用:
支持自定义标签,具有扩展性,可以持久化存储数据,对数据进行交换,数据配置(可读性强、灵活性高)。
定义XML语法:
XML文档总是以XML声明开始,它定义了XML的版本和所使用的编码等信息。该声明以”?”开始,紧跟”xml”字符串,以”?”结束。例:?xml version=”1.0” encoding=”UTF-8” ?
XML的主要部分是元素,元素由开始标签,元素内容和结束标签组成。元素内容可以包含子元素,字符数据等。(自定义标签)
XML文档中的注视符号是!-- --
XML和XHTML的区别:4.1 XHTML中标签都有固定含义,不能去创造标签。而XML支持自定义标签,具有扩展性。4.2 XHTML主要用来显示数据,可以通过标签和属性对页面进行排版,而XML用来存储和交换数据,无法描述页面的排版和显示形式。
XML结构的定义:
定义XML结构有两种形势:DTD和XSD。
5.1 DTD的作用:DTD可以更好的约束XML文件的编码规范。
5.2 DTD可以定义在XML文档中,也可以作为一个外部文件存在,作用于所有导入它的XML文档。
5.2.1 定义在XML文档中的语法:!DOCTYPE 根元素 【元素声明】 ?xml version=”1.0” encoding=”UTF-8” ? !--使用内部DTD文件--
!DOCTYPE pets[ //根元素是pets !ELEMENT pets (dogs,penguins) //pets直接下级元素是dogs,penguins,顺序 固定,只能出现一次
!ELEMENT dogs(dog*) //dogs的直接下级元素是dog,*表示dog元素可以出现0到多次(大于等于0)
!ELEMENT penguins(penguin+) //penguins的直接下级元素是penguin,+表示penguin元素至少要出现一次(大于等于1)
!ELEMENT dog(name,health,love,strain?)
//dog的直接下级元素依次是name,health,love,strain,?表示strain元素出现0到1次
!ATTLIST dog id CADTA #REQUIRED
//ATTLIST表示属性集合,dog元素有id属性,是CDATA类型,必须出现
!ELEMENT name (#PCDATA)
!ELEMENT health (#PCDATA) //#PCDATA表示name元素为”PCDATA”类型
!ELEMENT love (#PCDATA)
!ELEMENT strain (#PCDATA)
]
定义在外部的DTD文件,引入XML中的语法:? xml version=”1.0” encoding=”UTF-8”?!- - 使用外部DTD文件 - -!DOCTYPE pets SYSTEM “pet.dtd” //引入外部DTD文件自定义标签……
5.3 XML中特殊字符语法:![CDATA[需要出现的特殊字符]]
6. XML 文件配置样式:
配置css:用来处理XML的显示格式 ?xml version=1.0 encoding=GBK??xml-stylesheet href=test.css type=text/css ?personname中文/namephonphonephonphone/person定义如下样式:name {font-size:25px;color: #00FF33;}的四种解析方式:以DOM方式解析。优点是可以对文档的内容和结构进行修改,但不适合大文件的读取。Node对象的主要方法
方法名 说明 getChildNodes() 包含此节点的所有子节点的NodeList getFirstChild() 如果节点存在子节点,则返回第一个子节点 getLastChild() 如果节点存在子节点,则返回最后一个子节点 getNextSibling() 返回在DOM树中这个节点的下一个兄弟节点 getPreviousSibling() 返回在DOM树中这个节点的上一个兄弟节点 getNodeName() 根据节点的类型返回节点的名称 getNodeValue() 返回节点的值 getNodeT
文档评论(0)