编程用JAVA解析XML的方式


Posted in 面试题 onJuly 07, 2013
答:用SAX 方式解析XML,XML 文件如下:


王小明
信息学院
6258113
男,1955 年生,博士,95 年调入海南大学

事件回调类SAXHandler.java :
import java.io.*;
import java.util.Hashtable;
import org.xml.sax.*;
第28 页共59 页
public class SAXHandler extends HandlerBase{
private Hashtable table = new Hashtable();
private String currentElement = null;
private String currentValue = null;
public void setTable(Hashtable table){
this.table = table;
}
public Hashtable getTable(){
return table;
}
public void startElement(String tag, AttributeList attrs)
throws SAXException{
currentElement = tag;
}
public void characters(char[] ch, int start, int length)
throws SAXException{
currentValue = new String(ch, start, length);
}
public void endElement(String name) throws SAXException{
if (currentElement.equals(name))
table.put(currentElement, currentValue);
}
}
JSP 内容显示源码,SaxXml.jsp:


剖析XML 文件people.xml


contentType=”text/html;charset=GB2312″ %>







File file = new File(“c:\people.xml”);
FileReader reader = new FileReader(file);
Parser parser;
SAXParserFactory spf = SAXParserFactory.newInstance();
SAXParser sp = spf.newSAXParser();
第29 页共59 页
SAXHandler handler = new SAXHandler();
sp.parse(new InputSource(reader), handler);
Hashtable hashTable = handler.getTable();
out.println(“”);
out.println(“” + “”);
out.println(“” + “”);
out.println(“” + “”);
out.println(“” + “”);
out.println(“
” +
“教师信息表
姓名” +
(String)hashTable.get(new String(“name”)) +
学院” +
(String)hashTable.get(new String(“college”))
+”
电话” +
(String)hashTable.get(new String(“telephone”))
+ “
备注” +
(String)hashTable.get(new String(“notes”))
+ “
”);
%>


Tags in this post...

面试题 相关文章推荐
JPA面试常见问题
Nov 14 面试题
什么是类的返射机制
Feb 06 面试题
描述内存分配方式以及它们的区别
Oct 15 面试题
编写一子程序,将一链表倒序,即使链表表尾变表头,表头变表尾
Feb 10 面试题
27个经典Linux面试题及答案,你知道几个?
Mar 11 面试题
比较一下entity bean和session bean
Dec 27 面试题
介绍一下Python中webbrowser的用法
May 07 面试题
请用Python写一个获取用户输入数字,并根据数字大小输出不同信息的脚本
May 20 面试题
下面代码从性能上考虑,有什么问题
Apr 03 面试题
JVM是一个编译程序还是解释程序
Sep 11 面试题
建龙钢铁面试总结
Apr 15 面试题
为什么要使用servlet
Jan 17 面试题
XML文档定义有几种形式?它们之间有何本质区别?解析XML文档有哪几种方式?
Jan 12 #面试题
写一个方法,输入一个文件名和一个字符串,统计这个字符串在这个文件中出现的次数
Apr 13 #面试题
介绍下Java中==和equals的区别
Sep 01 #面试题
两道JAVA笔试题
Sep 14 #面试题
Java文件和目录(IO)操作
Aug 26 #面试题
有abstract方法的类一定要用abstract修饰吗
Mar 14 #面试题
如何用Java判断一个文件或目录是否存在
Nov 19 #面试题
You might like
中国收音机工业发展史
2021/03/02 无线电
PHP4与PHP5的时间格式问题
2008/02/17 PHP
PHP Ajax中文乱码问题解决方法
2009/02/27 PHP
PHP 定界符 使用技巧
2009/06/14 PHP
thinkphp控制器调度使用示例
2014/02/24 PHP
PHP用反撇号执行外部命令
2015/04/14 PHP
jQuery学习笔记之jQuery的动画
2010/12/22 Javascript
js操作输入框中选择内容兼容IE及其他主流浏览器
2014/04/22 Javascript
Javascript字符串对象的常用方法简明版
2014/06/26 Javascript
比例尺、缩略图、平移缩放之百度地图添加控件方法
2015/08/03 Javascript
javascript对象的相关操作小结
2016/05/16 Javascript
js实现一个简单的数字时钟效果
2017/03/29 Javascript
angular.js+node.js实现下载图片处理详解
2017/03/31 Javascript
jQuery实现checkbox的简单操作
2017/11/18 jQuery
JavaScript基础心法 数据类型
2018/03/05 Javascript
使用Angular CLI进行Build(构建)和Serve详解
2018/03/24 Javascript
基于elementUI使用v-model实现经纬度输入的vue组件
2019/05/12 Javascript
vue实现户籍管理系统
2020/05/29 Javascript
vue实例的选项总结
2020/06/09 Javascript
Vue单页面应用中实现Markdown渲染
2021/02/14 Vue.js
[02:28]DOTA2 2015国际邀请赛中国区预选赛首日现场百态
2015/05/26 DOTA
python备份文件的脚本
2008/08/11 Python
使用python编写脚本获取手机当前应用apk的信息
2014/07/21 Python
Python正则获取、过滤或者替换HTML标签的方法
2016/01/28 Python
深入浅析python继承问题
2016/05/29 Python
Python实现的计算马氏距离算法示例
2018/04/03 Python
全球第二大家装零售商:Lowe’s
2018/01/13 全球购物
中国汽车租赁行业头部企业:一嗨租车
2019/05/16 全球购物
查环查孕证明
2014/01/10 职场文书
大专生找工作自荐书
2014/06/10 职场文书
后勤管理员岗位职责
2014/08/27 职场文书
2015年护士节活动总结
2015/02/10 职场文书
2015年财务个人工作总结范文
2015/05/22 职场文书
公司酒会致辞
2015/07/30 职场文书
导游词之神仙居景区
2019/11/15 职场文书
Django使用redis配置缓存的方法
2021/06/01 Redis