首页 > 其他分享 >SAX解析xml

SAX解析xml

时间:2024-04-22 17:22:36浏览次数:19  
标签:xml 读取 String void System SAX 解析 out

//获取SAX解析器工厂
SAXParserFactory sf = SAXParserFactory.newInstance();
//获取SAX解析器
SAXParser sp = sf.newSAXParser();
//从解析器中得到reader对象
XMLReader reader = sp.getXMLReader();
//设置内容处理器
reader.setContentHandler(new XMLContentHandler()); //括号内要引入下面的类
//需要读取的xml文件路径
reader.parse(path:" ");

class XMLContentHandler implements ContentHandler{ //会override很多方法,只需要其中几种方法。

//开始读取xml文档
@Override
public void startDocument() throws SAXException {
System.out.println("开始读取xml文档");
}

//结束读取xml文档
@Override
public void endDocument() throws SAXException {
System.out.println("结束读取xml文档");
}

//开始读取节点
@Override
public void startElement(String uri, String localName, String qName, Attributes atts) throws SAXException {
System.out.print("<" + qName); //拼接标签的开头

    for(int i = 0; i < atts.getLength(); i++){ //遍历标签的所有属性

        System.out.print(" " + atts.getQName(i) + "=\"" + atts.getValue(i) + "\"" ); //  \"为转译双引号
    }
    System.out.println(">"); //输出结尾
}

//结束读取节点
@Override
public void endElement(String uri, String localName, String qName) throws SAXException {

}

//得到标签之间的字符串
@Override
public void characters(char[] ch, int start, int length) throws SAXException {
System.out.println(new String(ch,start,length)); //输出标签之间的字符串,使用的是new String(对象,开始位置,结束位置) 。
}

标签:xml,读取,String,void,System,SAX,解析,out
From: https://www.cnblogs.com/460759461-zeze/p/18151026

相关文章

  • java解析html的table元素
    java解析html的table元素解析HTMLTable元素的Java实现在网页开发中,HTML的Table元素是用来展示数据的一种常见方式。有时候我们需要从网页中提取表格中的数据,这就需要使用Java对HTMLTable进行解析。本文将介绍如何使用Java实现对HTMLTable元素的解析,以及一些常......
  • 掌控基础设施,加速 DevOps 之旅:IaC 深度解析
    在当今的DevOps世界中,基础设施即代码(IaC)是一个非常重要的概念。它在整个行业几乎无处不在,是现代工程角色的绝对关键。 本文将主要包含IaC的定义和它的好处,同时将Walrus作为最佳实践来进行详细讲解。 什么是基础设施即代码(IaC)用最简单的话来说,就是使用代码定义需要在......
  • springboot接口接收xml
    对xml文件的操作也可以借助hutool的XmlUtil.1.xml格式```xml<root> <deviceStatInfoonlineCount="64"offlineCount="2"errorCount="0"/> <data> <recordid="0"name="5号楼10层流量计"status="预警2/正常1......
  • 李沐动手学习深度学习 锚框部分代码解析
    这里只是对代码的解析,我在写这个解析的时候并没有看后面的内容,只能大概猜一下可能是要干嘛的首先是import相关工具,这里使用pytorch%matplotlibinlineimporttorchfromd2limporttorchasd2ltorch.set_printoptions(2)#精简输出精度1.生成锚框接下来是第一个难点,这......
  • 解析几何简单计算
    设点设线例题1题目已知椭圆方程\(\dfrac{x^2}{4}+y^2=1\),设直线\(l\),不经过点\(P(0,1)\)且与椭圆相交于\(A,B\)两点,若直线\(PA\)与直线\(PB\)的斜率和为\(-1\),证明:直线\(l\)过定点。题解由直线\(l\)不过点\(P(0,1)\)可设直线\(l\)方程:\(mx+n(y-1)=1\)......
  • 【爆款推荐】初中中考阅读理解难题一网打尽!句子结构深度解析+答案揭秘,助你轻松冲刺高
    PDF格式公众号回复关键字:ZKYDT008原文1TheGiantStudentFarmers’Marketisthelargeststudent-runfarmers’marketinthecountry,isn’tit?解析1TheGiantStudentFarmers’Market主语,is是,thelargeststudent-runfarmers’market表语,inthe......
  • Random 项目总结 -04设置项目项目写入XML,,调用exe
     Processpro=newProcess();stringpropath=System.AppDomain.CurrentDomain.BaseDirectory;stringt_data="";stringt_sa="";stringt_pwd="";privatevoidbutton1_Click(objectsender,Eve......
  • 读取XML 信息
    publicvoidmain_Load(objectsender,EventArgse){stringxmlpath=System.AppDomain.CurrentDomain.BaseDirectory+"setting.xml";XmlDocumentdocx=newXmlDocument();docx.Load(xmlpath);Xml......
  • docker---配置域名解析
    docker---配置域名解析以ubuntu22.04作为基础镜像,build新的镜像,在执行apt-getupdate命令时,出现以下错误:167.4Err:2http://security.ubuntu.com/ubuntujammy-securityInRelease167.4Temporaryfailureresolving'security.ubuntu.com'搜索错误信息,发现是域名解析问......
  • Random 项目总结 -登录按钮 读取XML文件判断用户、密码是否正确
      一、登录按钮privatevoidbutton1_Click(objectsender,EventArgse){stringxmlpath=System.AppDomain.CurrentDomain.BaseDirectory+"setting.xml";XmlDocumentdocx=newXmlDocument();docx.Load(xmlpath);......