操作xml 4种方法

详细介绍Flex中操作XML 一  在介绍Flex中操作XML之前,首先简单介绍下XML中的基本术语。    元素:XML中拥有开始标签和结束标签的这一块称为“元素”    节点:把XML元素与文本结合起来统称为节点    根节点:位于整个XML文当顶端的节点    文本节点:包含文本的节点    属性:元素的组成部分,以键/值形式放在元素标签内   用一个例子来说明 text node 阅读详情
 

Xml代码 复制代码

  1. <?xml version="1.0" encoding="GB2312"?>  
  2. <RESULT>  
  3. <VALUE>     
  4.   <NO>A1234</NO>     
  5.   <ADDR>河南省郑州市</ADDR>  
  6. </VALUE>  
  7. <VALUE>     
  8.   <NO>B1234</NO>     
  9.   <ADDR>河南省郑州市二七区</ADDR>  
  10. </VALUE>  
  11. </RESULT>   

第一种 DOM 实现方法:

Java代码 复制代码
  1. import java.io.File;   
  2.   
  3. import javax.xml.parsers.DocumentBuilder;   
  4. import javax.xml.parsers.DocumentBuilderFactory;   
  5.   
  6. import org.w3c.dom.Document;   
  7. import org.w3c.dom.NodeList;   
  8.   
  9. public class MyXMLReader2DOM {   
  10. public static void main(String arge[]) {   
  11.   
  12.   long lasting = System.currentTimeMillis();   
  13.   
  14.   try {   
  15.     File f = new File("data_10k.xml");   
  16.     DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();   
  17.     DocumentBuilder builder = factory.newDocumentBuilder();   
  18.     Document doc = builder.parse(f);   
  19.     NodeList nl = doc.getElementsByTagName("VALUE");   
  20.    for (int i = 0; i < nl.getLength(); i++) {   
  21.      System.out.print("车牌号码:"+ doc.getElementsByTagName("NO").item(i).getFirstChild().getNodeValue());   
  22.      System.out.println("车主地址:"+ doc.getElementsByTagName("ADDR").item(i).getFirstChild().getNodeValue());   
  23.     }   
  24.    } catch (Exception e) {   
  25.     e.printStackTrace();   
  26.    }   
  27. }   
  28. }  
import java.io.File;

import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;

import org.w3c.dom.Document;
import org.w3c.dom.NodeList;

public class MyXMLReader2DOM {
 public static void main(String arge[]) {

  long lasting = System.currentTimeMillis();
 
  try {
   File f = new File("data_10k.xml");
   DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
   DocumentBuilder builder = factory.newDocumentBuilder();
   Document doc = builder.parse(f);
   NodeList nl = doc.getElementsByTagName("VALUE");
   for (int i = 0; i < nl.getLength(); i++) {
    System.out.print("车牌号码:"+ doc.getElementsByTagName("NO").item(i).getFirstChild().getNodeValue());
    System.out.println("车主地址:"+ doc.getElementsByTagName("ADDR").item(i).getFirstChild().getNodeValue());
   }
  } catch (Exception e) {
   e.printStackTrace();
  }
 }
}

第二种,DOM4J实现方法:

Java代码 复制代码
  1. import java.io.*;   
  2. import java.util.*;   
  3. import org.dom4j.*;   
  4. import org.dom4j.io.*;   
  5.   
  6. public class MyXMLReader2DOM4J {   
  7. public static void main(String arge[]) {   
  8.   long lasting = System.currentTimeMillis();   
  9.   try {   
  10.     File f = new File("data_10k.xml");   
  11.     SAXReader reader = new SAXReader();   
  12.     Document doc = reader.read(f);   
  13.     Element root = doc.getRootElement();   
  14.     Element foo;   
  15.    for (Iterator i = root.elementIterator("VALUE"); i.hasNext();) {   
  16.      foo = (Element) i.next();   
  17.      System.out.print("车牌号码:" + foo.elementText("NO"));   
  18.      System.out.println("车主地址:" + foo.elementText("ADDR"));   
  19.     }   
  20.    } catch (Exception e) {   
  21.     e.printStackTrace();   
  22.    }   
  23. }   
  24. }  
import java.io.*;
import java.util.*;
import org.dom4j.*;
import org.dom4j.io.*;

public class MyXMLReader2DOM4J {
 public static void main(String arge[]) {
  long lasting = System.currentTimeMillis();
  try {
   File f = new File("data_10k.xml");
   SAXReader reader = new SAXReader();
   Document doc = reader.read(f);
   Element root = doc.getRootElement();
   Element foo;
   for (Iterator i = root.elementIterator("VALUE"); i.hasNext();) {
    foo = (Element) i.next();
    System.out.print("车牌号码:" + foo.elementText("NO"));
    System.out.println("车主地址:" + foo.elementText("ADDR"));
   }
  } catch (Exception e) {
   e.printStackTrace();
  }
 }
}

第三种 JDOM实现方法:

Java代码 复制代码
  1. import java.io.*;   
  2. import java.util.*;   
  3. import org.jdom.*;   
  4. import org.jdom.input.*;   
  5.   
  6. public class MyXMLReader2JDOM {   
  7. public static void main(String arge[]) {   
  8.   long lasting = System.currentTimeMillis();   
  9.   try {   
  10.     SAXBuilder builder = new SAXBuilder();   
  11.     Document doc = builder.build(new File("data_10k.xml"));   
  12.     Element foo = doc.getRootElement();   
  13.     List allChildren = foo.getChildren();   
  14.    for (int i = 0; i < allChildren.size(); i++) {   
  15.      System.out.print("车牌号码:"+ ((Element) allChildren.get(i)).getChild("NO").getText());   
  16.      System.out.println("车主地址:"+ ((Element) allChildren.get(i)).getChild("ADDR").getText());   
  17.     }   
  18.    } catch (Exception e) {   
  19.     e.printStackTrace();   
  20.    }   
  21. }   
  22. }  
import java.io.*;
import java.util.*;
import org.jdom.*;
import org.jdom.input.*;

public class MyXMLReader2JDOM {
 public static void main(String arge[]) {
  long lasting = System.currentTimeMillis();
  try {
   SAXBuilder builder = new SAXBuilder();
   Document doc = builder.build(new File("data_10k.xml"));
   Element foo = doc.getRootElement();
   List allChildren = foo.getChildren();
   for (int i = 0; i < allChildren.size(); i++) {
    System.out.print("车牌号码:"+ ((Element) allChildren.get(i)).getChild("NO").getText());
    System.out.println("车主地址:"+ ((Element) allChildren.get(i)).getChild("ADDR").getText());
   }
  } catch (Exception e) {
   e.printStackTrace();
  }
 }
}

第四种SAX实现方法:

Java代码 复制代码
  1. import javax.xml.parsers.SAXParser;   
  2. import javax.xml.parsers.SAXParserFactory;   
  3.   
  4. import org.xml.sax.Attributes;   
  5. import org.xml.sax.InputSource;   
  6. import org.xml.sax.SAXException;   
  7. import org.xml.sax.helpers.DefaultHandler;   
  8.   
  9. public class MyXMLReader2SAX extends DefaultHandler {   
  10.   
  11. java.util.Stack tags = new java.util.Stack();   
  12.   
  13. public MyXMLReader2SAX() {   
  14.   super();   
  15. }   
  16.   
  17. public static void main(String args[]) {   
  18.   long lasting = System.currentTimeMillis();   
  19.   try {   
  20.     SAXParserFactory sf = SAXParserFactory.newInstance();   
  21.     SAXParser sp = sf.newSAXParser();   
  22.     MyXMLReader2SAX reader = new MyXMLReader2SAX();   
  23.     sp.parse(new InputSource("data_10k.xml"), reader);   
  24.    } catch (Exception e) {   
  25.     e.printStackTrace();   
  26.    }   
  27.   
  28.    System.out.println("运行时间:" + (System.currentTimeMillis() - lasting)   
  29.      + "毫秒");   
  30. }   
  31.   
  32. public void characters(char ch[], int start, int length)   
  33.    throws SAXException {   
  34.    String tag = (String) tags.peek();   
  35.   if (tag.equals("NO")) {   
  36.     System.out.print("车牌号码:" + new String(ch, start, length));   
  37.    }   
  38.   if (tag.equals("ADDR")) {   
  39.     System.out.println("地址:" + new String(ch, start, length));   
  40.    }   
  41. }   
  42.   
  43. public void startElement(String uri, String localName, String qName,   
  44.     Attributes attrs) {   
  45.    tags.push(qName);   
  46. }   
  47. }  
XmlOperation(原创Xml操作组件) XmlOperation组件是一款纯C#编写的组件,所以使用该组件时无需注册。直接解压XmlOperation_Setup.exe文件,然后把里面的XmlOpertaion.dll拷贝到需要使用该组件的.net项目下,接着再引用这个组件就可以了。XmlOperation_Setup.exe文件,解压之后还附带了一个名为《XmlOperation组件使用说明》的Word文档对XmlOperation.dll的使用进行说明,而且还有一个配套的使用该组件的源码程序,更加清晰地展示了如何使用该组件。 此组件是本人的百分百源码编写的,由于本人资力有限,可能本组件还存在很多不足的地方。请各位大虾指点。 立即下载

相关推荐

xml操作xml操作xml操作xml操作xml操作

xml操作xml操作xml操作xml操作xml操作xml操作xml操作xml操作xml操作xml操作xml操作xml操作xml操作xml操作xml操作xml操作xml操作xml操作xml操作xml操作xml操作xml操作xml操作xml操作xml操作

xml基本操作

XML基本操作

weixin_58562753的博客 676

XML操作动态库

/******************************************************************************//* 开发者:元杰(夏祥均)*//* 开发时间:2007-08-08 *//******************************************************************************/#pragma once#import # include #include #ifdef XML_DLL#define DLL_API _declspec(dllexport)#else#define DLL_API _declspec(dllimport)#endif//******************************//属性结构体typedef struct { CString Name; CString Text;}ATTRIBUTE; //******************************//类//AFX_CLASS_EXPORT extern "C" class DLL_API CMyXML{//******************************//私有属性private: MSXML2::IXMLDOMDocument2Ptr m_XmlDoc; //xml对象 _bstr_t m_error; //错误对象 int m_code; //错误代码见下 bool m_isXmlDocInited; bool m_isFileLoad; //文件是否载入 bool m_isControl; //xml对象是否可操作 CString m_xmlFileName; //文件 //******************************//私有操作private: void InitClass(); //初始化类 bool SaveXML(); //保存文档//******************************//公有属性public: CStringArray m_NodeElements; //返回的NODE元素 CArray m_NodeAttributes; //返回的属性元素//******************************//公有操作public: //类的基本操作 CMyXML(void); CMyXML(CString fileName); ~CMyXML(void); //返回错误 CString GetErrorMessage(); int GetErrorCode(); //加载文件 bool LoadXmlFile(CString fileName); CString GetXmlFileName(); //读取节点

xml操作及解析

XML: 可扩展标记语言(extensible Markup Language) 1、特性与作用 特性: xml具有与平台无关性,是一门独立的标记语言。 xml具有自我描述性。 作用: 网络数据传输 数据存储 配置文件 2、XML文件及语法 .xml文件是保存XML数据的一种方式 xml数据也可以以其它方式构建(在内存中构建xml数据) 不要将xml语言狭义的理解为XML文件 XML语法格式 2.1 xml文档声明 <?xml version="1.0" encoding="UTF-8"

全栈攻城狮JSON的博客 552

基于Java+SpringBoot+Vue的中小企业设备管理系统的设计与开发(源码+lw+部署文档+讲解等)

💗博主介绍:✌新人博主,工作经验两年+、专注于Java、小程序技术领域和毕业项目实战✌💗🌟文末获取源码+数据库🌟

2301_76502068的博客 1382

PPPoe的抓包分析(详细)

PPPoe的报文结构 可以看出PPPoe的报文结构其实很简单,只不过是将PPPoe的报文塞到以太网的载荷中,而且它的头部字段也十分的简单,TLV就不说了,code字段表示了PPPoe不同的报文类型,比较常见的就是上面的五个报文了,PPPoe的报文类型其实还蛮多的。session ID主要的作用就是标识一段会话,因为使用PPPoe的最主要作用就是使得多台设备可以借助以太网多点接入多点访问的特点去和一台设备做上网认证请求,这样运营商一台认证设备就可以满足多个用户的认证请求,这和PPP相比起来好的不止一点。

qq_47529104的博客 7867

扩展标记语言-XML

XML 指可扩展标记语言(eXtensible Markup Language)。 XML 被设计用来传输和存储数据。 XML 很重要,也很容易学习。 :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: XML 简介 XML 被设计用来传输和存储数据。 HTML 被设计用来显示数据。 。。。。。。。。。。。。。 ...

qq_42671834的博客 1410

第三章:ESP32零基础教学 - 3.4 蓝牙通信

本文详细介绍了如何在ESP32上实现经典蓝牙和BLE通信,并提供了代码解释和示例。通过这些示例,你可以轻松地将蓝牙功能集成到你的物联网项目中。无论是经典蓝牙的简单串口通信,还是BLE的灵活服务架构,ESP32都能满足你的需求。

Hi__gril的博客 4017

xml文件使用及解析

Xml和html都是一种标记语言,但是xml是可扩展的标记语言,之所以是可扩展的,对于html所有的标记比如,表示一个连接。都是有一定含义的,不能自己定义一些标签,但是xml就可以自定义一些标签。用于传输数据1. JAXP:sun公司提供的解析器,支持dom和sax两种思想。...

程序员一博 5991

Vcenter安全加固-防火墙-只允许特定的IP地址访问Vcenter

3、此时除了被允许的IP地址可以访问之外,其余地址均被防火墙阻挡。2、再进行0.0.0.0/0匹配所有其他IP地址进行拒绝访问。1、只需要关注接受和拒绝即可。2、其余选择不是这个场景使用的。1.只允许特定的IP地址访问Vcenter。1、登录Vcenter管理界面。2、点击防火墙-添加。

博然的宝藏库 7277

Amber&pdb4amber | 准备PDB文件

PDB文件中唯一需要或有用的数据来设置AMBER模拟是:原子名称,残基名称,也许还有链标识符(如果存在多条链),以及重原子的坐标。除非加载额外的文库,否则非蛋白质结构(特别是低分子量配体)会引起问题;如果它们在PDB文件中的名称对应于AMBER库中的内部名称,则通常会识别水和单原子离子。–dry选项移除结构中的结晶水和–reduce选项在最理想的位置添加氢原子.为tleap程序调整从外部获得的PDB文件。

ASKCOS博客 896

XMl基本操作

使⽤Mybatis的注解⽅式,主要是来完成⼀些简单的增删改查功能. 如果需要实现复杂的SQL功能,建议使⽤XML来配置映射语句,也就是将SQL语句写在XML配置⽂件中.之前,我们学习了,用注解的方式来实现MyBatis接下来我们学习XML的⽅式MyBatis XML的⽅式需要以下两步配置数据库连接字符串和MyBatis写持久层代码MyBatis XML配置⽂件配置连接字符串和MyBatis此步骤需要进⾏两项设置,数据库连接字符串设置和 MyBatis 的 XML ⽂件配置。写持久层代码。

weixin_73775528的博客 953

05 SAP CPI 访问第一个CPI接口

其中的clientid的值可作为Basic验证的用户名,clientsecret的值可作为Basic验证的密码。点击SEND按钮,可看见返回状态为200 OK。在04中,我们得到TOKEN令牌。POSTMAN向下滚动。点击按钮获取token。

SAP CPI 661

mysql查询字段内容为xml_使用JDBC4.0操作XML类型的字段(保存获取xml数据)的方法

在 Java SE 6 所提供的诸多新特性和改进中,值得一提的是为 Java 程序提供数据库访问机制的 JDBC 版本升级到了 4.0, 这个以 JSR-221 为代号的版本 , 提供了更加便利的代码编写机制及柔性 , 并且支持更多的数据类型 .JDBC 4.0 的新特性分为下述四类:1. 驱动及连接管理2. 异常处理3. 数据类型支持4. API 的变化以上说这么都不是本文要讲的重点内容,下面给...

weixin_42153793的博客 419

前言:为什么要学习爬虫和逆向,该如何学习?

学习爬虫和逆向技术是当今数字化时代的重要技能,尤其在数据分析、安全研究、自动化工具开发等领域有广泛应用。以下是详细的学习理由、路径和方法:

数据知道的博客 1万+

如何调试10G/25G以太网IP自协商/Link Training

如果是40G/50G, 100G以太网,选的是多通道的IP,务必保证两端的通道0是正确对接上的,因为在做自协商的时候,以太网只使用通道0,其它通道需在自协商完成后再加入工作。b. 自协商的工作完全由IP自动完成的,所以只要配置没问题,你只需要耐心等待就可以看到自协商的完成,以an_good_check为标志,并且进入下一步linktraining。c. 在LT的过程中,首先你要等到IP能够锁定LT帧,即frame_lock拉高,然后你就可以进行你自己的LT算法了,与AN不同LT是由客户手动完成的。

qq_43416206的博客 1507

JAVA操作XML4种方法的比较

1. 介绍1)DOM(JAXP Crimson解析器)         DOM是用与平台和语言无关的方式表示XML文档的官方W3C标准。DOM是以层次结构组织的节点或信息片断的集合。这个层次结构允许开发人员在树中寻找特定信息。分析该结构通常需要加载整个文档和构造层次结构,然后才能做任何工作。由于它是基于信息层次的,因而DOM被认为是基于树或基于对象的。DOM以及广义的基于树的处理具有几个优点。首先

jiangbo86的专栏 427

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

java操作XML4中方法总结(转载)

 Java更新XML的四种常用方法简介本文简要的讨论了Java语言编程中更新XML文档的四种常用方法,并且分析这四种方法的优劣。其次,本文还对如何控制Java程序输出的XML文档的格式做了展开论述。  JAXP是Java API for XML Processing的英文字头缩写,中文含义是:用于XML文档处理的使用Java语言编写的编程接口。JAXP支持DOM、SAX、XSLT等标准。为了增

cyzhang1983的专栏 703

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

java如何将数据保存为xml6_java_使用JDBC4.0操作XML类型的字段(保存获取xml数据)的方法,在 Java SE 6 所提供的诸多新特 - phpStudy...

使用JDBC4.0操作XML类型的字段(保存获取xml数据)的方法在 Java SE 6 所提供的诸多新特性和改进中,值得一提的是为 Java 程序提供数据库访问机制的 JDBC 版本升级到了 4.0, 这个以 JSR-221 为代号的版本 , 提供了更加便利的代码编写机制及柔性 , 并且支持更多的数据类型 .JDBC 4.0 的新特性分为下述四类:1. 驱动及连接管理2. 异常处理3. 数据类型...

weixin_35693911的博客 207

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

php与xml文件下载,PHP4和PHP5版本下解析XML文档的操作方法实例分析

本文实例讲述了PHP4和PHP5版本下解析XML文档的操作方法。分享给大家供大家参考,具体如下:在PHP网站开发与建设过程中,时常会碰到需要对XML文档进行解析,PHP4版本自带了XML解析器(sax),PHP5版本增加了SimpleXML(基于dom)的XML扩展,对XML的解析更是非常方便,今天和大家分享下在不同环境下对XML文档进行解析的方法。XML文档Leapsoul-PHP网站开发htt...

weixin_39925413的博客 224

简述PHP4和PHP5版本下解析XML文档的操作方法

在PHP网站开发与建设过程中,时常会碰到需要对XML文档进行解析,PHP4版本自带了XML解析器(sax),PHP5版本增加了SimpleXML(基于dom)的XML扩展,对XML的解析更是非常方便,今天和大家分享下在不同环境下对XML文档进行解析的方法。XML文档 1234567891011121314151617181920 <?xmlversion...

weixin_30484247的博客 84

Flex操作XML包括增删改查

一 在介绍Flex中操作XML之前,首先简单介绍下XML中的基本术语。   元素:XML中拥有开始标签和结束标签的这一块称为“元素”    节点:把XML元素与文本结合起来统称为节点    根节点: 位于整个XML文当顶端的节点    文本节点:包含文本的节点

专注于ORACLE 1071

【OpenCV 4开发详解】保存和读取XML和YMAL文件

本文首发于“小白学视觉”微信公众号,欢迎关注公众号 本文作者为小白,版权归人民邮电出版社发行所有,禁止转载,侵权必究! 经过几个月的努力,小白终于完成了市面上第一本OpenCV 4入门书籍《OpenCV 4开发详解》。为了更让小伙伴更早的了解最新版的OpenCV 4,小白与出版社沟通,提前在公众号上连载部分内容,请持续关注小白。 除了图像数据之外,有时程序中的尺寸较小的Mat类矩阵、字符串...

小白学视觉 1135

Flex中操作XML

XMLFlexAppleAdobeActionScript.flex 操作xml 实现增删改查2010-10-07 12:38转载自 zhao_gw最终编辑 zhao_gw详细介绍Flex中操作XML(上)2009年12月30日 星期三 12:05一 在介绍Flex中操作XML之前,首先简单介绍下XML中的基本术语。   元素:XML中拥有开始标签和结束标签的这一块称为“元素”

俊哥 1201

AS3中新的XML处理方法 - E4X

今天我们来看看AS3中新的XML处理方法:E4X,直到现在,ECMA脚本语言规范(ECMA-262)--AscriptScript 3.0的核心基础,并没有提供任何的XML数据处理类或方法。AcriontScript之前的版本(从Flash 5中的ActionScript开始)有一些处理XML数据的类和方法,但是它们并不是基于ECMAScript标准的。新的ECMA脚本语言规范第4版草稿中定义

红杉树(ecitnet)的博客 915

C#操作XML通用方法汇总

以上的方法总结采用.net4.5版本和c#6.0语法。

weixin_51255495的博客 2101
上一篇: 怎样调节tomcat缓存大小
下一篇: El表达式
nddjava
博客等级 码龄16年 15粉丝 121原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值