编程用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...

面试题 相关文章推荐
某个公司的Java笔面试题
Mar 11 面试题
struct和class的区别
Nov 20 面试题
上海奥佳笔试题面试题
Nov 16 面试题
请写出char *p与"零值"比较的if语句
Sep 24 面试题
.NET笔试题(20个问题)
Feb 02 面试题
Ref与out有什么不同
Nov 24 面试题
介绍一下Linux内核的排队自旋锁
Jan 04 面试题
一些Solaris面试题
Mar 22 面试题
Linux内核产生并发的原因
Nov 08 面试题
什么是用户模式(User Mode)与内核模式(Kernel Mode) ?
Sep 07 面试题
如何用JQuery进行表单验证
May 29 面试题
写clone()方法时,通常都有一行代码,是什么?
Oct 31 面试题
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
PHP 抓取网页图片并且另存为的实现代码
2010/03/24 PHP
php基础教程 php内置函数实例教程
2012/08/21 PHP
PHP简单获取上月、本月、近15天、近30天的方法示例
2017/07/03 PHP
laradock环境docker-compose操作详解
2019/07/29 PHP
Laravel使用模型实现like模糊查询的例子
2019/10/24 PHP
Javascript下的keyCode键码值表
2007/04/10 Javascript
JS获取计算机mac地址以及IP的实现方法
2014/01/08 Javascript
基于jQuery实现最基本的淡入淡出效果实例
2015/02/02 Javascript
javascript移动开发中touch触摸事件详解
2016/03/18 Javascript
jQuery代码实现表格中点击相应行变色功能
2016/05/09 Javascript
JavaScript实现拖拽元素对齐到网格(每次移动固定距离)
2016/11/30 Javascript
angularjs+bootstrap菜单的使用示例代码
2017/03/07 Javascript
ES6中的rest参数与扩展运算符详解
2017/07/18 Javascript
vue-cli webpack模板项目搭建及打包时路径问题的解决方法
2018/02/26 Javascript
自己动手封装一个React Native多级联动
2018/09/19 Javascript
微信小程序webview与h5通过postMessage实现实时通讯的实现
2019/08/20 Javascript
微信小程序官方动态自定义底部tabBar的例子
2019/09/04 Javascript
Vue+Element实现网页版个人简历系统(推荐)
2019/12/31 Javascript
微信小程序实现电影App导航和轮播
2020/11/30 Javascript
Python解决鸡兔同笼问题的方法
2014/12/20 Python
Python中用于计算对数的log()方法
2015/05/15 Python
12步教你理解Python装饰器
2016/02/25 Python
pygame 精灵的行走及二段跳的实现方法(必看篇)
2017/07/10 Python
在python中安装basemap的教程
2018/09/20 Python
python 递归深度优先搜索与广度优先搜索算法模拟实现
2018/10/22 Python
python实现转盘效果 python实现轮盘抽奖游戏
2019/01/22 Python
使用python对多个txt文件中的数据进行筛选的方法
2019/07/10 Python
关于pytorch中网络loss传播和参数更新的理解
2019/08/20 Python
python isinstance函数用法详解
2020/02/13 Python
应用数学自荐书范文
2013/11/24 职场文书
社区巾帼文明岗事迹材料
2014/06/03 职场文书
赵乐秦在党的群众路线教育实践活动总结大会上的讲话稿
2014/10/25 职场文书
实习科室评语
2015/01/04 职场文书
大学开学典礼新闻稿
2015/07/17 职场文书
python将图片转为矢量图的方法步骤
2021/03/30 Python
Django + Taro 前后端分离项目实现企业微信登录功能
2022/04/07 Python