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

面试题 相关文章推荐
普通PHP程序员笔试题
Jan 01 面试题
介绍下Java的输入输出流
Jan 22 面试题
JRE、JDK、JVM之间的关系怎样
May 16 面试题
深圳-东方伟业笔试部分
Feb 11 面试题
新大陆软件面试题
Nov 24 面试题
在网络中有两台主机A和B,并通过路由器和其他交换设备连接起来,已经确认物理连接正确无误,怎么来测试这两台机器是否连通?如果不通,怎么来判断故障点?怎么排
Jan 13 面试题
动态密码技术
Oct 18 面试题
介绍一下linux文件系统分配策略
Nov 17 面试题
软件生产职位结构化面试主要考察要素及面试题库
Jun 12 面试题
异步传递消息系统的作用
May 01 面试题
遇到的Mysql的面试题
Jun 29 面试题
DELPHI面试题研发笔试试卷
Nov 08 面试题
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
索尼ICF-SW100收音机评测
2021/03/02 无线电
SWFUpload与CI不能正确上传识别文件MIME类型解决方法分享
2011/04/18 PHP
PHP实现的微信公众号扫码模拟登录功能示例
2019/05/30 PHP
ThinkPHP 5.x远程命令执行漏洞复现
2019/09/23 PHP
php实现记事本案例
2020/10/20 PHP
javascript入门·动态的时钟,显示完整的一些方法,新年倒计时
2007/10/01 Javascript
JS URL传中文参数引发的乱码问题
2009/09/02 Javascript
解析使用js判断只能输入数字、字母等验证的方法(总结)
2013/05/14 Javascript
js中的异常处理try...catch使用介绍
2013/09/21 Javascript
JQuery实现倒计时按钮具体方法
2013/11/14 Javascript
javascript操作table(insertRow,deleteRow,insertCell,deleteCell方法详解)
2013/12/16 Javascript
jQuery select表单提交省市区城市三级联动核心代码
2014/06/09 Javascript
jQuery dataTables与jQuery UI 对话框dialog的使用教程
2016/09/02 Javascript
使用jquery.qrcode.js生成二维码插件
2016/10/17 Javascript
node.js程序作为服务并在windows下开机自启动(用forever)
2017/03/29 Javascript
Jquery+Ajax+xml实现中国地区选择三级联动菜单效果(推荐)
2017/06/09 jQuery
详解如何让InstantClick兼容MathJax、百度统计等
2017/09/12 Javascript
React 项目迁移 Webpack Babel7的实现
2018/09/12 Javascript
30分钟用Node.js构建一个API服务器的步骤详解
2019/05/24 Javascript
Vue proxyTable配置多个接口地址,解决跨域的问题
2020/09/11 Javascript
对sklearn的使用之数据集的拆分与训练详解(python3.6)
2018/12/14 Python
python用fsolve、leastsq对非线性方程组求解
2018/12/15 Python
python 求一个列表中所有元素的乘积实例
2019/06/11 Python
python的slice notation的特殊用法详解
2019/12/27 Python
使用PyTorch将文件夹下的图片分为训练集和验证集实例
2020/01/08 Python
Django Haystack 全文检索与关键词高亮的实现
2020/02/17 Python
python爬虫泛滥的解决方法详解
2020/11/25 Python
收银员的岗位职责范本
2014/02/04 职场文书
行政部岗位职责范本
2014/03/13 职场文书
违反交通法规检讨书
2014/09/10 职场文书
政法干警核心价值观心得体会
2014/09/11 职场文书
医院反腐倡廉演讲稿
2014/09/16 职场文书
2014年“世界无车日”活动方案
2014/09/21 职场文书
出纳年终工作总结2014
2014/12/05 职场文书
浙江省杭州市平均工资标准是多少?
2019/07/09 职场文书
Flink 侧流输出源码示例解析
2022/09/23 Servers