第8章XML程序设计基础.ppt

上传人:sccc 文档编号:4750457 上传时间:2023-05-13 格式:PPT 页数:52 大小:1.21MB
返回 下载 相关 举报
第8章XML程序设计基础.ppt_第1页
第1页 / 共52页
第8章XML程序设计基础.ppt_第2页
第2页 / 共52页
第8章XML程序设计基础.ppt_第3页
第3页 / 共52页
第8章XML程序设计基础.ppt_第4页
第4页 / 共52页
第8章XML程序设计基础.ppt_第5页
第5页 / 共52页
点击查看更多>>
资源描述

《第8章XML程序设计基础.ppt》由会员分享,可在线阅读,更多相关《第8章XML程序设计基础.ppt(52页珍藏版)》请在三一办公上搜索。

1、第8章 XML程序设计基础,8,内容提要,可扩展标记语言(eXtensible Markup Language,XML)是目前应用开发领域中的热门技术。本章主要讲述XML基本概念,XML的三种显示样式:CSS(Cascading Style Sheet,层叠式样式表单)、XSL(Extensible Style Language,扩展的标记语言)和Data Island(数据岛)及如何利用ASP.NET操作XML文件。,XML的概念,XML(eXtensible Markup Language)和HTML(Hyper Text Markup Language)师出同门,都是从SGML(Stan

2、dard Generalized Markup Language)延伸而出的标记语言。XML可以定义语义标记,是元标记语言。XML不像超文本标记语言HTML,HTML只能使用规定的标记。对于XML,用户可以定义需要的标记。,XML文档的结构,案例名称:元标记语言程序名称:8-01.xmlzhourunfamaleTeacher of Peking Univ.,使用属性,案例名称:添加属性程序名称:8-02.xml周润发北京大学计算机系教师2000,典型的XML文档结构,案例名称:典型的XML文档结构程序名称:8-03.xml周润发教师 None 唱歌、跳舞,XML声明,XML声明是以“XML声

3、明的作用是告诉浏览器将要处理的文档是XML文件。一个XML文档一般以一个XML声明作为开始,XML声明在XML文档中是可选内容,可加可不加,推荐加入这一行声明。XML声明中可以包含version,encoding和standalone三个属性。,1.version属性,在XML声明中必须包含version属性,指明以下文档遵循哪个版本的XML规范。该属性必须排在XML声明中其他属性之前。由于当前的XML最新版本为1.0,所以在XML声明中出现的版本说明无一例外地都是version=1.0。,2.encoding属性,该属性指示文档中字符使用的编码标准。如果文档中使用其他编码规则,则必须使用en

4、coding属性指明。在XML规范中列出了很多编码类型,一般情况下很多编码用不到,只要知道下面几个常见的编码就可以了。(1)GB2312或者GBK:简体中文编码。(2)BIG5:繁体中文编码。(3)UTF-8:压缩的Unicode编码。如果XML文档使用中文标记或出现中文内容,就应该在XML声明中使用encoding=gb2312属性。,3.standalone属性,该属性表明该XML文档是否和一个外部文档配套使用。如果把这个属性值设为“yes”。如“”,说明这是一个独立的XML文档,与外部文件无关联。,注释,注释是对文档结构或内容的解释,不属于XML文档的内容,所以XML解释器不会处理它们。

5、注释以“”结束。下面一行是注释:解析器碰到“-”时就看作是一个注释的结束,接着把后面的内容作为普通XML文档处理。所以,字符串“-”不能出现在注释的内部。除了这个限制外,所有其他合法的XML字符都可以出现在注释中。有时候为了暂时不让XML解析器处理XML文档中的某些内容,可以在它们的前后加上注释标记。,字符和实体引用,字符和实体引用可以向XML文档中引入其他信息,而不需要直接在文档中输入它们。字符和实体引用通常用于以下情况。(1)字符不能直接出现在文档中,因为它们会被解释为标记。(2)由于输入设备的限制,字符不能直接输入到文档中。(3)由于单字节字符的限制,字符不能可靠地经过处理程序。(4)相

6、同的字符串或文档片断在文档中多次使用。,表8-1 XML常用的实体引用,使用特殊字符,案例名称:使用特殊字符程序名称:8-04.xml北京大学教师2000,XML的三种显示格式,显示XML文件常见的有三种方式:使用CSS样式表,使用XSL样式单和使用XML的数据岛技术。,CSS样式表,案例名称:CSS样式表程序名称:8-05.cssGREETING font-size:48pt;font-weight:bold;,案例名称:调用CSS的XML文件程序名称:8-06.xmlHello!,XSL样式语言,案例名称:调用XSL的XML文件程序名称:8-07.xml 小张 25 66666666 小王

7、 26 66666667 老刘 28 66666669,案例名称:XSL文件程序名称:8-08.xsl 姓名 年龄 电话,XML数据岛技术,案例名称:使用XML文件数据岛程序名称:8-09.htm小王编程基础是个好老师小李JSP技术是个好老师名字:课程:结论:,使用XML数据岛,案例名称:使用XML数据岛程序名称:8-10.xml 小王 编程基础 是个好老师 小李.NET技术 是个好老师,使用XML数据岛,案例名称:使用XML数据岛程序名称:8-11.html名字:课程:结论:,XML的两种语法规则,在XML文档规则方面,目前有两种:W3C的DTD技术和微软公司Scema技术。,DTD文档类型

8、定义,1、内部DTD,案例名称:内部DTD程序名称:8-12.xml 张三,测试内部DTD,案例名称:测试内部DTD程序名称:8-13.xml 张三中国北京,因为IE本身对DTD的校验不是很严格,需要其他的解析器。使用微软提供的工具“msxml.exe”文件可以对DTD进行校验。将msxml.exe文件和8-13.xml文件拷贝到C盘根目录,使用命令“msxml 8-13.xml”对其进行合法性校验,可以验证出该文件是不合法的,显示信息如图,2、外部DTD,案例名称:外部DTD程序名称:8-14.DTD,案例名称:外部DTD程序名称:8-15.xml 张三中国北京,Schema文档规则,虽然D

9、TD胜任对XML文档结构的验证,但是它有很多局限。为此,微软提出了Schema的方案来改进DTD。Schema相对于DTD的明显好处是XML Schema文档本身也是XML文档,而不是像DTD一样使用另外语法。,案例名称:定义Schema程序名称:8-16.xml,案例名称:使用Schema程序名称:8-17.xml hello,XML规范中的字符集,常见的字符集有:ASCII字符集、ISO8859字符集、Unicode字符集合、UCS字符集常用的中文字符集:GB2312、GBK和Big5。,ASCII字符集,ASCII码的全称是American Standard Code for Infor

10、mation Interchange(美国标准信息交换码),它是一种单字节的7位二进制编码。在ASCII码字符集中,每个数字,字母或特殊字符都对应于一个7位二进制数,这个7位二进制数是以一个字节(8位)来表示的(其中最高位为0)。从而定义了书写英语所需要的全部字符以及部分控制字符。,ISO 8859字符集,ASCII码在定义之初只是为了表示英语(更严格来说是美式英语),对于象、等其他语言或地区所需要的字符则没有定义其表示方式。随着计算机应用的扩展,人们对其他字符表示的需求越来越迫切。1987年,国际标准组织ISO(International Organization for Standardi

11、zation)发布了字符集标准:ISO8859-1字符集。ISO8859-1通常也被叫做Latin-1字符集。Latin-1字符集在ASCII码的基础上增加了对西欧语言的支持。,Unicode字符集,Unicode是由美国各大电脑厂商所组成的Unicode协会创建的。其目的在于推广一个统一的编码方案,将世界上所有的常用文字都包含进去。它涵盖了美国、欧洲、中东、非洲、印度、亚洲和太平洋等地区的绝大多数语言。Unicode在创建之初希望能够方便地交换、处理和显示多种文字,就象数学符号一样地通用。它希望能够解决使用多种字符标准的计算机国际化问题。,中文字符集,包括中文简体和繁体,常用的字符集有三种:

12、GB2312、GBK和Big5。GB码的全称是GB2312-80信息交换用汉字编码字符集 基本集,1980年发布,是中文信息处理的国家标准,在中国大陆及海外使用简体中文的地区(如新加坡等)是强制使用的唯一中文编码。P-Windows3.2和苹果OS就是以GB2312为基本汉字编码的,Windows 95/98则以GBK为基本汉字编码,但兼容支持GB2312。,GBK字符集,GBK编码是中国大陆制订的、等同于UCS的新的中文编码扩展国家标准。GBK工作小组于1995年12月完成的GBK规范。该编码标准兼容GB2312,共收录了汉字21003个、符号883个,并提供了1894个造字码位,简、繁体字

13、融于一库。,BIG5字符集,BIG5编码是由台湾制定的、目前在台湾、香港地区普遍使用的一种繁体汉字的编码标准,包括符号440个,一级汉字5401个、二级汉字7652个,共计13060个汉字。,UTF-8字符集,UTF是Unicode/UCS Transformation Format的缩写。由于Unicode/UCS 使用多字节表示一个字符,因此使用Unicode/UCS的英文文本文件比使用ASCII码或Latin-1码的文件要大得多,因此出现了压缩版本的Unicode/UCS:UTF-8。,UTF-16字符集,UTF-16也是ISO/IEC 10646-1和Unicode的变形表示方式的一种

14、。它的目的是维持双八位的编码方式,同时也用一些特殊的双八位来表示非基本多文种平面(BMP)中的一些字符。这种用来表示非BMP字符的方法在Unicode中称作代理对机制。,在XML中使用HTML,浏览器对XML标记可以根据已经定义好的CSS或者XSL进行解析,也可以在XML文件中插入HTML标记或者JavaScript代码。,案例名称:使用HTML标记程序名称:8-18.xml Tom male,在XML中使用JavaScript代码,案例名称:使用JavaScript标记程序名称:8-19.xml function test()alert(Hello,+document.myform.txt1

15、.value);,.NET处理XML文件的命名空间,XML是.NET的重要组成部分,因此提供强大的XML文件的支持。命名空间“System.Xml”专门处理XML相关文件;ADO.NET中的DataSet对象也提供了处理XML文件的方法。,System.Xml命名空间,表8-2 System.Xml常用类列表,DataSet的XML处理方法,在ASP.NET中读取XML,利用ASP.NET读取一个XML文件有四种方式:1、使用XML控件。2、使用DOM实现读取。3、使用DataSet对象载入文档。4、利用框架类读取XML文件。,方式一:使用XML控件,案例名称:使用XML控件程序名称:8-20

16、.aspx,方式二:使用DOM技术,案例名称:使用DOM技术程序名称:8-21.aspx void Page_Load(Object sender,EventArgs e)XmlDocument doc=new XmlDocument();doc.Load(Server.MapPath(8-01.xml);xml1.Document=doc;,方式三:使用DataSet对象,案例名称:使用DataSet对象程序名称:8-22.aspx void Page_Load(object sender,EventArgs e)DataSet objDataSet=new DataSet();objDat

17、aSet.ReadXml(Server.MapPath(8-10.xml);dg.DataSource=objDataSet.Tables教师.DefaultView;dg.DataBind();,方式四:按文本方式读取,案例名称:按文本方式读取程序名称:8-23.aspx,在ASP.NET中创建XML文档,比较常用的方法有3种:1、利用DataSet创建。2、利用DOM对象创建。3、利用文本方式创建。,方式一:利用Dataset创建,案例名称:利用Dataset创建程序名称:8-24.aspxvoid Page_Load(Object sender,EventArgs e)DataSet m

18、yds=new DataSet();DataTable mydt=new DataTable(Squares);DataRow mydr;mydt.Columns.Add(new DataColumn(数字,typeof(Int32);mydt.Columns.Add(new DataColumn(平方,typeof(Int32);/定义主键/mydt.PrimaryKey=new DataColumnmydt.Columns数字;for(int i=0;i,方式二:利用DOM对象创建,案例名称:利用DOM对象添加节点程序名称:8-25.aspx void Page_Load(object s

19、ender,EventArgs e)XmlDocument xmldoc=new XmlDocument();xmldoc.Load(Server.MapPath(book1.xml);XmlElement eleBook=xmldoc.CreateElement(book);XmlAttribute attStyle=xmldoc.CreateAttribute(style);eleBook.SetAttributeNode(attStyle);eleBook.SetAttribute(style,Good);XmlNode root=xmldoc.FirstChild;root.Appen

20、dChild(eleBook);xmldoc.Save(Server.MapPath(book2.xml);output.Text=添加成功!;,方式三:利用文本方式创建,案例名称:利用文本方式创建程序名称:8-26.aspx,小结,本章主要介绍XML程序设计以及如何JSP访问XML文件的编程接口。本章需要了解XML的概念,理解XML的三种显示格式以及两种语法规则。了解字符集的概念以及在XML中使用HTML标记的方法。从应用的角度介绍在ASP.NET中如何操作XML文档。需要掌握如何使用System.XML名字空间下一些常用类和方法的使用。掌握使用DataSet对象操作XML文件。,本章习题,8-1.简述XML和HTML的区别与联系。8-2.XML文档由哪些部分组成?各有什么作用?如何在XML文件中输出大于号?8-3.XML文件如何调用CSS样式文件?如何调用XSL样式文件?如何使用XML数据岛技术?8-4.简述常用的三种中文字符集。8-5 如何利用System.Xml命名控件操作XML文件?使用3种方法读取8-01.xml文件。(上机完成)8-6 如何利用DataSet对象读写XML文件?(上机完成),

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 建筑/施工/环境 > 农业报告


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号