云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > xml实验指导书

xml实验指导书

  • 62 次阅读
  • 3 次下载
  • 2025/5/1 23:04:28

《XML技术及应用》实验指导书

99999999

林 琳 88888888

五、思考题

(1)CSS的基本作用是什么?

(2)CSS中元素显示定义之间有嵌套关系吗?

六、参考文献

1. 吴洁 编著,XML应用教程,清华大学出版社,118-149页,2007年5月

13

《XML技术及应用》实验指导书

实验六 DOM技术应用

一、实验目的

1、了解DOM技术的基本对象;

2、掌握DOM技术的常用对象的基本属性及方法; 3、掌握DOM技术在Java、C#语言里的简单使用。

二、实验要求

1、能使用DOM接口对XML文档进行解析; 2、能使用DOM接口创建XML文档。

三、实验原理

1、DOM模型在内存中为XML文档建立逻辑形式的节点树; 2、DOM接口是W3C组织提供的操作XML文档的接口。

四、实验内容 1.题目一

编写Java应用程序,使用DOM对象对指定的XML文档进行遍历,输出XML文档的所有节点。参考Java源文件如下。必须事先下载Xerces.jar包,设置到CLASSPATH路径。 import java.io.*;

import org.w3c.dom.*; import org.w3c.dom.Node; import org.xml.sax.*;

import org.apache.xerces.parsers.*; public class DOMSample {

static public void main(String[] argv) { try {

if (argv.length != 1) {

System.err.println(\ System.exit(1); }

BufferedReader in = new BufferedReader(new FileReader(argv[0])); DOMParser parser = new DOMParser(); parser.parse(new InputSource(in));

Document doc = parser.getDocument(); System.out.println(\元素是: \

printElements(doc); System.out.println();

System.out.println(\每个元素的属性是: \ printElementAttributes(doc); }

catch (SAXException s) {

System.out.println(s.toString()); } catch (IOException e) {

System.out.println(e.toString()); } }

14

《XML技术及应用》实验指导书

static void printElements(Document doc) {

NodeList nl = doc.getElementsByTagName(\表示匹配所有标记。 Node n;

for (int i=0;i

System.out.print(n.getNodeName()+\ } }

static void printElementAttributes(Document doc) {

NodeList nl = doc.getElementsByTagName(\

Element e; Attr attr; NamedNodeMap nnm; String attrname; String attrval; int i,len; len = nl.getLength(); for (int j=0;j < len;j++) {

e = (Element)nl.item(j);

System.out.println(e.getTagName()+\ nnm = e.getAttributes(); if (nnm != null) {

for (i=0;i

attrval = attr.getValue();

System.out.println(\属性是:\ } } }

} }

C#语言的实现可参考教材P152的示例,VB的实现可参考教材P194的示例9.1。

2.题目二

使用DOM接口创建XML文档,实现语言不限。要求包括2个学生的基本信息,每个学生包括:班级(班级号、学生(姓名、学号、成绩(数学、英语、体育)))。Java的参考实现如下:

import org.w3c.dom.*;

import org.apache.xerces.dom.DocumentImpl; import org.w3c.dom.Document;

import org.apache.xml.serialize.OutputFormat; import org.apache.xml.serialize.XMLSerializer; import java.io.*;

public class DOMGenerate {

public static void main( String[] argv ) {

try {

Document doc= new DocumentImpl();

Element root = doc.createElement(\ // Create Root Element

15

《XML技术及应用》实验指导书

Element item = doc.createElement(\ // Create element

item.appendChild( doc.createTextNode(\

root.appendChild( item ); // atach element to Root element item = doc.createElement(\ // Create another Element item.appendChild( doc.createTextNode(\

root.appendChild( item ); // Attach Element to previous element down tree item = doc.createElement(\

item.appendChild( doc.createTextNode(\

root.appendChild( item ); // Attach another Element - grandaugther doc.appendChild( root ); // Add Root to Document

OutputFormat format = new OutputFormat( doc ); //Serialize DOM // 创建一个File对象,代表DOM Tree所包含的数据的输出介质,这是一个XML文件。 File f = new File (\

// 创建文件输出流对象fos,请留意构造函数的参数。

FileOutputStream fos=new FileOutputStream(f); XMLSerializer serial = new XMLSerializer(format ); serial.setOutputByteStream(fos); // 串行化输出结果。

serial.asDOMSerializer().serialize(doc); } catch ( Exception ex ) {

ex.printStackTrace(); }

} }

C#语言的实现可参考教材P156的示例,VB的实现可参考教材P153-154的示例。

五、思考题

(1)如何为题目2所建立的XML文档增加学生节点的子节点“专业”? (2)DOM解析器与SAX阅读器的原理与性能有何不同?

六、参考文献

1. 吴洁 编著,XML应用教程,清华大学出版社,175-194页,2007年5月

16

搜索更多关于: xml实验指导书 的文档
  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

《XML技术及应用》实验指导书 99999999 林 琳 88888888 五、思考题 (1)CSS的基本作用是什么? (2)CSS中元素显示定义之间有嵌套关系吗? 六、参考文献 1. 吴洁 编著,XML应用教程,清华大学出版社,118-149页,2007年5月 13 《XML技术及应用》实验指导书 实验六 DOM技术应用 一、实验目的 1、了解DOM技术的基本对象;

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com