`
penghao122
  • 浏览: 363811 次
  • 性别: Icon_minigender_1
  • 来自: 广东珠海
社区版块
存档分类
最新评论

JAXDemo

    博客分类:
  • xml
XML 
阅读更多
package javawebserivce;
import java.io.*;
import java.util.*;
import javax.xml.parsers.*;
import org.xml.sax.*;
import org.xml.sax.helpers.*;
public class JAXPDemo extends DefaultHandler
{
private Hashtable tags;
public void startDocument() throws SAXException
{
tags=new Hashtable();
}
public void startElement
(String namespaceURI,String localName,
String keyName,Attributes atts) throws SAXException
{
String key=keyName;
Object value=tags.get(key);
//若哈希表中没有此元素则添加此元素
if(value==null)
{
tags.put(key,new Integer(1));
}
//若已经有此元素则元素数量自增
else
{
int count=((Integer)value).intValue();
count++;
tags.put(key,new Integer(count));
}
}
public void endDocument() throws SAXException
{
Enumeration keys=tags.keys();
//XML文档解析结束时打印所有标签出现次数
while(keys.hasMoreElements())
{
String tag=(String)keys.nextElement();
int count=((Integer)tags.get(tag)).intValue();
System.out.println("Tag<"+tag+"> occurs "+count+" times ");
}
}
//将File转化成URL
private static String convertToFileURL(String fileName)
{
String path=new File(fileName).getAbsolutePath();
if(File.separatorChar!='/')
{
path=path.replace(File.separatorChar,'/');
}
if(!path.startsWith("/"))
{
path="/"+path;
}
return "file:"+path;
}
private static void usage()
{
System.out.println("Usage:JAXPDemo [-v] <filename>");
System.out.println(" -v=validation");
System.exit(1);
}
public static void main(String[] args)
{
String fileName=null;
boolean validation=false;
for(int i=0;i<args.length;i++)
{
if(args[i].equals("-v"))
{
validation=true;
}
else
{
fileName=args[i];
if(i!=args.length-1)
{
usage();
}
}
if(fileName==null)
{
usage();
}
//创建SAXParserFactory实例
SAXParserFactory factory=SAXParserFactory.newInstance();
factory.setValidating(validation);
//创建XMLReader实例
XMLReader xmlReader=null;
try
{
SAXParser saxParser=factory.newSAXParser();
xmlReader=saxParser.getXMLReader();
}
catch(Exception e)
{
System.out.println(e.toString());
System.exit(1);
}
//设置XMLReader的内容处理
xmlReader.setContentHandler(new JAXPDemo());
//设置XMLReader的错误处理
xmlReader.setErrorHandler(new MyErrorHandler(System.out));
try
{
//解析XML文件
xmlReader.parse(convertToFileURL(fileName));
}
catch(SAXException se)
{
System.out.println(se.toString());
System.exit(1);
}
catch(IOException ioe)
{
System.out.println(ioe.toString());
System.exit(1);
}
}
}
private static class MyErrorHandler implements ErrorHandler
{
private PrintStream out;
MyErrorHandler(PrintStream out)
{
this.out=out;
}
private String getParseExceptionInfo(SAXParseException spe)
{
String systemID=spe.getSystemId();
if(systemID==null)
{
systemID="null";
}
String info="URI="+systemID+"Line="+spe.getLineNumber()+
":"+spe.getMessage();
return info;
}
public void warning(SAXParseException spe) throws SAXException
{
out.println("Waring:"+getParseExceptionInfo(spe));
}
public void error(SAXParseException spe) throws SAXException
{
String message="Error:"+getParseExceptionInfo(spe);
throw new SAXException(message);
}
public void fatalError(SAXParseException spe) throws SAXException
{
String message="Fatal Error:"+getParseExceptionInfo(spe);
throw new SAXException(message);
}
}
}
分享到:
评论

相关推荐

    jspm心理健康系统演示录像2021.zip

    所有源码都有经过测试,可以运行,放心下载~

    【BP分类】基于matlab阿基米德算法优化BP神经网络AOA-BP故障识别数据分类【Matlab仿真 4975期】.zip

    CSDN Matlab研究室上传的资料均有对应的仿真结果图,仿真结果图均是完整代码运行得出,完整代码亲测可用,适合小白; 1、完整的代码压缩包内容 主函数:main.m; 调用函数:其他m文件;无需运行 运行结果效果图; 2、代码运行版本 Matlab 2019b;若运行有误,根据提示修改;若不会,私信博主; 3、运行操作步骤 步骤一:将所有文件放到Matlab的当前文件夹中; 步骤二:双击打开main.m文件; 步骤三:点击运行,等程序运行完得到结果; 4、仿真咨询 如需其他服务,可私信博主或扫描博客文章底部QQ名片; 4.1 博客或资源的完整代码提供 4.2 期刊或参考文献复现 4.3 Matlab程序定制 4.4 科研合作

    【故障诊断】基于matlab减法平均算法优化双向时间卷积神经网络SABO-BiTCN轴承数据故障诊断【Matlab仿真 5085期】.zip

    CSDN Matlab研究室上传的资料均有对应的仿真结果图,仿真结果图均是完整代码运行得出,完整代码亲测可用,适合小白; 1、完整的代码压缩包内容 主函数:main.m; 调用函数:其他m文件;无需运行 运行结果效果图; 2、代码运行版本 Matlab 2019b;若运行有误,根据提示修改;若不会,私信博主; 3、运行操作步骤 步骤一:将所有文件放到Matlab的当前文件夹中; 步骤二:双击打开main.m文件; 步骤三:点击运行,等程序运行完得到结果; 4、仿真咨询 如需其他服务,可私信博主或扫描博客文章底部QQ名片; 4.1 博客或资源的完整代码提供 4.2 期刊或参考文献复现 4.3 Matlab程序定制 4.4 科研合作

    BLE蓝牙单片机CC2540、CC2541裸机简易C语言程序开发之温湿度传感器DHT11.zip

    1、嵌入式物联网单片机项目开发例程,简单、方便、好用,节省开发时间。 2、代码使用IAR软件开发,当前在CC2540/CC2541上运行,如果是其他型号芯片,请自行调整。 3、软件下载时,请注意接上硬件,并确认烧录器连接正常。 4、有偿指导v:wulianjishu666; 5、如果接入其他传感器,请查看账号发布的其他资料。 6、单片机与模块的接线,在代码当中均有定义,请自行对照。 7、若硬件有差异,请根据自身情况调整代码,程序仅供参考学习。 8、代码有注释说明,请耐心阅读。

    【故障诊断】基于matlab麻雀搜索算法优化双向时间卷积神经网络SSA-BiTCN轴承数据故障诊断【Matlab仿真 5095期】.zip

    CSDN Matlab研究室上传的资料均有对应的仿真结果图,仿真结果图均是完整代码运行得出,完整代码亲测可用,适合小白; 1、完整的代码压缩包内容 主函数:main.m; 调用函数:其他m文件;无需运行 运行结果效果图; 2、代码运行版本 Matlab 2019b;若运行有误,根据提示修改;若不会,私信博主; 3、运行操作步骤 步骤一:将所有文件放到Matlab的当前文件夹中; 步骤二:双击打开main.m文件; 步骤三:点击运行,等程序运行完得到结果; 4、仿真咨询 如需其他服务,可私信博主或扫描博客文章底部QQ名片; 4.1 博客或资源的完整代码提供 4.2 期刊或参考文献复现 4.3 Matlab程序定制 4.4 科研合作

    【故障诊断】基于matlab蜣螂算法优化双向时间卷积神经网络DBO-BiTCN轴承数据故障诊断【Matlab仿真 5098期】.zip

    CSDN Matlab研究室上传的资料均有对应的仿真结果图,仿真结果图均是完整代码运行得出,完整代码亲测可用,适合小白; 1、完整的代码压缩包内容 主函数:main.m; 调用函数:其他m文件;无需运行 运行结果效果图; 2、代码运行版本 Matlab 2019b;若运行有误,根据提示修改;若不会,私信博主; 3、运行操作步骤 步骤一:将所有文件放到Matlab的当前文件夹中; 步骤二:双击打开main.m文件; 步骤三:点击运行,等程序运行完得到结果; 4、仿真咨询 如需其他服务,可私信博主或扫描博客文章底部QQ名片; 4.1 博客或资源的完整代码提供 4.2 期刊或参考文献复现 4.3 Matlab程序定制 4.4 科研合作

    深度神经网络学习.docx

    深度神经网络学习, 深度神经网络(Deep Neural Networks, 以下简称DNN)是深度学习的基础,而要理解DNN,首先我们要理解DNN模型,下面我们就对DNN的模型与前向传播算法做一个总结。

    麻雀搜索算法优化时间卷积双向门控循环单元融合注意力机制SSA-TCN-BiGRU-Attention光伏数据回归预测【Matlab仿真 5388期】.zip

    CSDN Matlab研究室上传的资料均有对应的仿真结果图,仿真结果图均是完整代码运行得出,完整代码亲测可用,适合小白; 1、完整的代码压缩包内容 主函数:main.m; 调用函数:其他m文件;无需运行 运行结果效果图; 2、代码运行版本 Matlab 2019b;若运行有误,根据提示修改;若不会,私信博主; 3、运行操作步骤 步骤一:将所有文件放到Matlab的当前文件夹中; 步骤二:双击打开main.m文件; 步骤三:点击运行,等程序运行完得到结果; 4、仿真咨询 如需其他服务,可私信博主或扫描博客文章底部QQ名片; 4.1 博客或资源的完整代码提供 4.2 期刊或参考文献复现 4.3 Matlab程序定制 4.4 科研合作

    【BP分类】基于matlab花朵授粉算法优化BP神经网络FPA-BP故障识别数据分类【Matlab仿真 4997期】.zip

    CSDN Matlab研究室上传的资料均有对应的仿真结果图,仿真结果图均是完整代码运行得出,完整代码亲测可用,适合小白; 1、完整的代码压缩包内容 主函数:main.m; 调用函数:其他m文件;无需运行 运行结果效果图; 2、代码运行版本 Matlab 2019b;若运行有误,根据提示修改;若不会,私信博主; 3、运行操作步骤 步骤一:将所有文件放到Matlab的当前文件夹中; 步骤二:双击打开main.m文件; 步骤三:点击运行,等程序运行完得到结果; 4、仿真咨询 如需其他服务,可私信博主或扫描博客文章底部QQ名片; 4.1 博客或资源的完整代码提供 4.2 期刊或参考文献复现 4.3 Matlab程序定制 4.4 科研合作

    基于java的大嘴团网上商城网站源代码(完整前后端+mysql+说明文档+LW).zip

    零食购物网站主要就是基于BS架构模式开发的网站,分为前台的零食展示和后台的管理员的管理,用户的购买信息管理等,以下是零食网站的主要功能: (1) 系统管理员权限: ① 管理员信息管理:管理员主要可以新增修改管理员信息,主要对密码进行修改。 ② 注册用户管理:实现了对注册用户基本信息的管理,可以对用户进行审核。 ③ 零食类别信息:实现了对零食的类别的基本信息的管理。 ④ 零食信息管理:管理了零食的基本信息的情况,并能上传零食图片等。 ⑤ 订单信息管理:针对购买的零食的订单信息进行管理查看。 ⑥ 用户结账管理:实现了用户购买零食的结账信息的查看和管理。 ⑦ 系统信息管理:主要是对系统的基本信息情况进行管理,以及管理了系统的公告,留言管理等信息。 (2) 注册用户: ① 用户信息管理:注册用户在个人的后台,可以对个人的基本信息和资料进行修改。 ② 我的购物车:查看个人购买零食的购物车信息。 ③ 我的结账信息:针对购买的零食结账的信息进行管理。 ④ 退订信息管理:对零食进行退订申请,并查看申请结果和退订情况。 (3) 网站前台: ① 零食信息展示:以列表的形式展示了网站销售...

    AIX (IBM):AIX系统安装与配置.docx

    AIX (IBM):AIX系统安装与配置.docx

    【轨迹规划】基于matlab RRT四旋翼无人机安全且最小能量的轨迹规划【含Matlab源码 9871期】.zip

    Matlab领域上传的视频均有对应的完整代码,皆可运行,亲测可用,适合小白; 1、代码压缩包内容 主函数:main.m; 调用函数:其他m文件;无需运行 运行结果效果图; 2、代码运行版本 Matlab 2019b;若运行有误,根据提示修改;若不会,私信博主; 3、运行操作步骤 步骤一:将所有文件放到Matlab的当前文件夹中; 步骤二:双击打开main.m文件; 步骤三:点击运行,等程序运行完得到结果; 4、仿真咨询 如需其他服务,可私信博主; 4.1 博客或资源的完整代码提供 4.2 期刊或参考文献复现 4.3 Matlab程序定制 4.4 科研合作

    【BP分类】基于matlab开普勒算法优化BP神经网络KOA-BP故障识别数据分类【Matlab仿真 5005期】.zip

    CSDN Matlab研究室上传的资料均有对应的仿真结果图,仿真结果图均是完整代码运行得出,完整代码亲测可用,适合小白; 1、完整的代码压缩包内容 主函数:main.m; 调用函数:其他m文件;无需运行 运行结果效果图; 2、代码运行版本 Matlab 2019b;若运行有误,根据提示修改;若不会,私信博主; 3、运行操作步骤 步骤一:将所有文件放到Matlab的当前文件夹中; 步骤二:双击打开main.m文件; 步骤三:点击运行,等程序运行完得到结果; 4、仿真咨询 如需其他服务,可私信博主或扫描博客文章底部QQ名片; 4.1 博客或资源的完整代码提供 4.2 期刊或参考文献复现 4.3 Matlab程序定制 4.4 科研合作

    Amanda:Amanda数据结构与算法教程.docx

    Amanda:Amanda数据结构与算法教程.docx

    基于java的供暖企业信息化报修平台源代码(完整前后端+mysql+说明文档+LW).zip

    基于java的供暖企业信息化报修平台源代码(完整前后端+mysql+说明文档+LW).zip

    Amanda软件开发流程教程.docx

    Amanda软件开发流程教程.docx

    河大计算机学科导论实验Ⅵ

    河大计算机学科导论实验Ⅵ

    基于Arduino的温湿度监测系统.zip

    这个项目是一个基础的温湿度监测系统,适合作为电子设计竞赛的入门项目。希望这个项目能帮助你入门电子设计和微控制器编程!

    BLE蓝牙单片机CC2540、CC2541带OSAL操作系统的项目实战开发例程-CC2540的USB口通讯.zip

    1、嵌入式物联网单片机项目开发例程,简单、方便、好用,节省开发时间。 2、代码使用IAR软件开发,当前在CC2540/CC2541上运行,如果是其他型号芯片,请自行调整。 3、软件下载时,请注意接上硬件,并确认烧录器连接正常。 4、有偿指导v:wulianjishu666; 5、如果接入其他传感器,请查看账号发布的其他资料。 6、单片机与模块的接线,在代码当中均有定义,请自行对照。 7、若硬件有差异,请根据自身情况调整代码,程序仅供参考学习。 8、代码有注释说明,请耐心阅读。 9、例程具有一定专业性,非专业人士请谨慎操作。

Global site tag (gtag.js) - Google Analytics