当前位置: 首页 > news >正文

做网站襄樊桂林生活网app下载

做网站襄樊,桂林生活网app下载,济宁百度网站建设,网站开发九大优势文章目录 1.SAX 解析器1#xff09;什么是 SAX2#xff09;SAX 工作流程初始化实现事件处理类解析 3#xff09;示例代码 2.DOM 解析器1#xff09;什么是 DOM2#xff09;DOM 工作流程初始化解析 XML 文档操作 DOM 树 3#xff09;示例代码 总结 在项目开发中#xff0… 文章目录 1.SAX 解析器1什么是 SAX2SAX 工作流程初始化实现事件处理类解析 3示例代码 2.DOM 解析器1什么是 DOM2DOM 工作流程初始化解析 XML 文档操作 DOM 树 3示例代码 总结 在项目开发中XML 是一种常见的数据交换格式。为了处理和解析 XML 文档Java 提供了两种主要的解析方式SAXSimple API for XML和 DOMDocument Object Model。 1.SAX 解析器 1什么是 SAX SAX 是一种基于事件的 XML 解析方式。它逐行的扫描 XML 文档并在解析的过程中触发事件允许程序对文档进行响应。由于 SAX 不需要将整个文档加载到内存中因此适用于处理大型 XML 文件。 2SAX 工作流程 初始化 创建 SAXParserFactory 实例并通过它创建 SAXParser SAXParserFactory factory SAXParserFactory.newInstance(); SAXParser saxParser factory.newSAXParser();实现事件处理类 创建一个类实现 org.xml.sax.helpers.DefaultHandler 类或其子类重写需要处理的事件方法 import org.xml.sax.Attributes; import org.xml.sax.SAXException; import org.xml.sax.helpers.DefaultHandler;public class HandlerDemo extends DefaultHandler {Overridepublic void startElement(String uri, String localName, String qName, Attributes attributes) throws SAXException {// 处理元素开始事件}Overridepublic void characters(char[] ch, int start, int length) throws SAXException {// 处理元素文本事件}Overridepublic void endElement(String uri, String localName, String qName) throws SAXException {// 处理元素结束事件} }解析 使用 SAXParser 解析 XML 文档并将事件处理类注册到解析器中 HandlerDemo handler new HandlerDemo(); saxParser.parse(example.xml, handler);3示例代码 example.xml ?xml version1.0 encodingUTF-8? studentnamecheney/nameage18/age /studentDemo.java import org.xml.sax.Attributes; import org.xml.sax.helpers.DefaultHandler; import javax.xml.parsers.SAXParser; import javax.xml.parsers.SAXParserFactory; import java.io.File; public class Demo {public static void main(String[] args) throws Exception {// 1. 初始化SAXParserFactory factory SAXParserFactory.newInstance();SAXParser saxParser factory.newSAXParser();// 2. 实现事件处理类DefaultHandler handler new DefaultHandler() {Overridepublic void startElement(String uri, String localName, String qName, Attributes attributes) {System.out.println(元素开始: qName);}Overridepublic void characters(char[] ch, int start, int length) {String str new String(ch, start, length).trim();if (!.equals(str)) {System.out.println(元素文本: str);}}Overridepublic void endElement(String uri, String localName, String qName) {System.out.println(元素结束: qName);}};// 3. 解析String path D:\\workspace\\demo\\src\\main\\resources\\example.xml;saxParser.parse(new File(path), handler);} }输出结果 元素开始: student 元素开始: name 元素文本: cheney 元素结束: name 元素开始: age 元素文本: 18 元素结束: age 元素结束: student 2.DOM 解析器 1什么是 DOM DOM 是一种基于树结构的 XML 解析方式。它将整个 XML 文档加载到内存中并形成一个树形结构允许通过节点的方式访问和修改文档的内容。DOM 解析器适用于需要频繁随机访问 XML 数据的情况。 2DOM 工作流程 初始化 创建 DocumentBuilderFactory 实例并通过它创建 DocumentBuilder DocumentBuilderFactory factory DocumentBuilderFactory.newInstance(); DocumentBuilder docBuilder factory.newDocumentBuilder();解析 XML 文档 使用 DocumentBuilder 解析 XML 文档得到 Document 对象 Document document docBuilder.parse(example.xml);操作 DOM 树 使用 Document 对象进行节点的增删改查操作。 // 获取根元素 Element root document.getDocumentElement(); // 获取名为 element 的所有节点 NodeList nodeList root.getElementsByTagName(student);for (int i 0; i nodeList.getLength(); i) {Node node nodeList.item(i);if (node.getNodeType() Node.ELEMENT_NODE) {Element element (Element) node;System.out.println(学生信息: element.getTextContent());} }3示例代码 example.xml studentsstudentnamecheney/nameage18/age/student /studentsDemo.java mport org.w3c.dom.Document; import org.w3c.dom.Element; import org.w3c.dom.Node; import org.w3c.dom.NodeList; import javax.xml.parsers.DocumentBuilder; import javax.xml.parsers.DocumentBuilderFactory; import java.io.File; public class Demo {public static void main(String[] args) throws Exception{// 1. 初始化DocumentBuilderFactory factory DocumentBuilderFactory.newInstance();DocumentBuilder docBuilder factory.newDocumentBuilder();// 2. 解析String path D:\\workspace\\demo\\src\\main\\resources\\example.xml;Document document docBuilder.parse(new File(path));// 3. 操作 DOM 树Element root document.getDocumentElement();NodeList nodeList root.getElementsByTagName(student);for (int i 0; i nodeList.getLength(); i) {Node node nodeList.item(i);if (node.getNodeType() Node.ELEMENT_NODE) {Element element (Element) node;System.out.println(学生信息: element.getTextContent());}}} }输出结果 学生信息: cheney 18 总结 解析 XML 文件的解析器有 SAX 解析器 和 DOM 解析器 两种不同方式各自有适用的场景。SAX 适用于大型 XML 文件它基于事件的方式逐行解析不需要将整个文档加载到内存。DOM 适用于需要随机访问 XML 数据的情况它将整个文档加载到内存形成树状结构允许直接操作节点。在选择解析方式时需根据具体需求和文档大小来选择适当的解析器。
http://www.hkea.cn/news/14576917/

相关文章:

  • 怎样做自己的视频网站百度热议
  • 网站建设文案怎么设计wordpress的Portfolio
  • 深圳网站建设jm3q抚州临川网站建设
  • 自己做的网站图片无法显示大连网站 设计公司
  • 东莞 网站设计在线域名ip查询
  • 做重视频网站如何创建网址免费注册
  • 家居网站建设素材网站特色怎么写
  • 有哪些专业做饰品的网站app电商论坛网站模板
  • php网站开发软件语言qq空间注册申请
  • 网站诚信认证怎么做微信网站建设
  • 怎么用ps做网站上的产品图哈尔滨app开发
  • 贵阳设计网站建设专业网站制作哪专业
  • 网站开发电商项目的成本管理怎么写品牌建设教材
  • 重庆网站制作技术武功县住房和城乡建设局网站
  • 长沙招聘网站做网站的如何找客户
  • 公司创建网站销售网页设计与制作教程题
  • 公司的建设网站公司网页设计师培训班招生
  • 给前端做网站的图片叫什么北京公司建网站要多少费用
  • 做外贸需要做网站吗网站里的搜索怎么做
  • 做团购网站需要什么资质传奇霸业网页游戏开服
  • 网站建设图片logo昆山移动网站建设
  • 怎么做直播网站刷弹幕社交网站开发背景
  • 深圳竞价托管公司官网网站优化公司
  • 网站升级 云南省建设注册考试中心网站备案模板
  • 网站后台管理系统的重要技术指标传媒公司起名字大全免费
  • 网站会员系统模板html可以用什么软件写
  • 连山建设局网站智慧软文网
  • 网站建设 朝阳区如何自己做网站建设
  • 爱站小工具计算器代理小程序怎么赚钱
  • 企业网站配色大连承揽营销型网站公司