`
soundycui
  • 浏览: 84309 次
  • 性别: Icon_minigender_2
  • 来自: 深圳
社区版块
存档分类
最新评论

xml解析最常用的方法

    博客分类:
  • java
XML 
阅读更多
String xpath = String format("/root/shools/shool[@id=\"%d\"]",xx);
String xpath = "/root/shools";
String xpath  = "/root/shools/shool[@id=1]";
String xpath = "//root/shools/shool/class/student[@name=\"alice\"]";

1.获得文档
a.新的
Document document = DocumentHelper.createDocument();
b.旧的
InputStreamReader read=new InputStreamReader(new FileInputStream(filePath), “UTF8”);
SAXReader reader = new SAXReader();
Document document = reader.read(read);

2.查找document单个节点
Node node = document.selectSingleNode(xpath);

3.查找document子节点列表
List<Node> list = document.selectNodes(xpath);

4.写文档
        OutputFormat format = null;
        format = OutputFormat.createCompactFormat();  紧凑格式
        format = OutputFormat.createPrettyPrint();    非紧凑格式  
        format.setTrimText(false); ??
        format.setPadText(false);  ??
        format.setEncoding("GB2312");//用于支持中文
        XMLWriter writer = new XMLWriter(new FileWriter(savePath), format);
        writer.write( document );
        writer.close();

        <也能支持中文>
        OutputFormat format = OutputFormat.createPrettyPrint();    非紧凑格式
        FileOutputStream fos = new FileOutputStream(savePath);
        XMLWriter writer = new XMLWriter(fos, format);
        writer.write(document);
        writer.close();
        
       
        5. 增加根节点
        Element root = document.addElement(“root”);
       
        6.新增加元素
        Element shoolElement = root.addElement("school");
       
        7.增加属性
        shoolElement.addAttribute("shoolName", "xxxx学校");
       
        7.设置元素文本???
        element.setText("sdfsdfs");
       
        9.查找node下的单个节点
        xpath = String.format("/root/shools/shool/class[@classid=\"%d\"]",1);
        Node selNode = node.selectSingleNode(xpath);
       
        10.查找node下的多个节点
        List<Node> list = node.selectNodes(xpath);
       
        11. 取得节点属性值
        String attribute = node.valueOf("@属性名");  必加@
       
        12.取得Element属性值
        element.attributeValue(attribute_name);
       
        13. 修改属性值
                Attribute attribute = element.attribute(attribute_name);
if (attribute != null)
attribute.setValue(attribute_value);

14.删除节点
if (node.getParent() == null) 
       document.remove(node);
else    node.getParent().remove(node);

15.判断字符串是否是合法的XML
DocumentHelper.parseText(content);

分享到:
评论

相关推荐

    易语言 xml解析 易语言 xml解析 教程 带源码

    7. **实际应用**:了解了基本的XML解析方法后,我们可以将其应用到实际项目中,比如读取配置文件、从网络获取XML数据、存储游戏数据等。 8. **源码分析**:教程中提供的源码是学习易语言XML解析的重要资源。通过...

    比较通用的xml解析方法

    本篇文章将详细探讨一种比较通用的XML解析方法,适用于各种编程环境。 在处理XML文件时,我们通常会遇到两种主要的解析方式:DOM(Document Object Model)和SAX(Simple API for XML)。DOM将整个XML文档加载到...

    XML解析器示例

    在LabVIEW(Laboratory Virtual Instrument Engineering Workbench)这个强大的图形化编程环境中,XML解析器是处理和操作XML数据的关键工具。本示例主要展示了如何在LabVIEW中实现XML文件的加载、保存和解析。 首先...

    xml 解析 xml 解析几何

    在本文中,我们将深入探讨XML解析,以及如何在Java中处理XML文档。 XML解析是将XML文档转换为编程语言可以理解和操作的数据结构的过程。解析XML主要有两种方法:DOM(Document Object Model)和SAX(Simple API for...

    java解析xml文档的常用方法

    "java解析xml文档的常用方法" Java 解析 XML 文档的常用...在选择解析方法时,需要考虑到项目的具体需求。如果需要对数据和结构做出更改,可以选择 DOM 或 JDOM。如果需要快速解析大型文档,可以选择 SAX 或 DOM4J。

    xml解析文件的两种方式

    本文将详细介绍XML解析文件的两种主要方式:SAX(Simple API for XML)和DOM(Document Object Model)。 **1. DOM解析** DOM解析方式是将整个XML文档加载到内存中,构建一个树形结构,称为DOM树。这个树的每个...

    XML解析和生成工具

    本文将深入探讨XML解析和生成工具的相关知识,以及如何利用提供的`Markup.cpp`和`Markup.h`文件进行操作。 XML的结构: XML文档由一系列元素构成,每个元素都有一个开始标签和结束标签,如 `&lt;tag&gt;` 和 `&lt;/tag&gt;`。...

    xml三种解析方法实现

    XML(eXtensible Markup Language)是一种用于存储和传输...在项目中,选择合适的XML解析方法至关重要,因为它直接影响到程序的性能和可维护性。了解并掌握这三种解析方式,可以帮助开发者针对不同的场景做出最佳决策。

    三种解析XML的方法

    在Java中,有三种主要的XML解析方法:DOM(Document Object Model)、SAX(Simple API for XML)和dom4j。每种方法都有其特点和适用场景,下面将详细阐述这三种解析方法。 1. DOM解析: DOM解析器将整个XML文档加载...

    4种解析XML方法实例

    本教程将详细介绍四种常见的XML解析方法,以帮助你更好地理解和处理XML数据。 1. DOM解析器(Document Object Model) DOM解析器将整个XML文档加载到内存中,创建一个树形结构,允许开发者通过节点操作来访问和修改...

    ios 简单xml解析DEMO绝对可用

    本教程将介绍如何在iOS应用中实现简单的XML解析,并提供了一个名为"UITableViewTricks"的DEMO,供开发者们参考学习。 XML文件结构清晰,易于理解,但在iOS中解析XML数据并非内置功能,需要借助第三方库或者Apple...

    Java 解析 xml 3种方法

    Java XML解析是开发中常见的任务,它涉及到将XML文档转换为程序可以操作的数据结构。XML(eXtensible Markup Language)是一种标记语言,常用于数据交换、配置存储等场景。在Java中,有多种方式来解析XML,主要包括...

    iphone开发之xml解析

    了解了基本的XML解析方法后,可以深入学习如何使用`NSXMLParser`或第三方库进行解析操作,例如设置解析器代理、处理XML节点事件、构建数据模型等。同时,掌握如何处理XML中的命名空间、实体引用、属性等特殊元素也是...

    XML解析器,用于解析XML文件

    理解和熟练使用XML解析器是任何IT专业人士的必备技能之一,无论是在移动应用、Web服务还是桌面应用程序中,XML解析都发挥着关键作用。了解和掌握TinyXML这样的解析库,可以帮助开发者更高效地处理XML数据。

    四中最常用的XML文件解析总结.doc

    在IT领域,特别是软件开发与数据处理中,XML(可扩展标记语言)作为一种重要的数据交换格式,被广泛应用于各种场景。对于XML文件的解析,...理解并掌握这些XML解析技术,将极大地提升你在处理XML数据时的能力和效率。

    java心电图xml解析.zip

    Java XML解析是Java开发中的一项重要技能,尤其是在处理结构化数据时。XML(eXtensible Markup Language)是一种用于标记数据的语言,广泛应用于配置文件、数据交换和文档存储等领域。本压缩包“java心电图xml解析....

    XML解析还原代码

    解析XML文件的常用方法有两种:DOM解析和SAX解析。DOM解析会将整个XML文档加载到内存中,形成一个完整的DOM树,适合小到中等大小的XML文件。而SAX解析则是事件驱动的,逐行读取文件,不创建完整的DOM树,适合处理...

    xml各种解析方法

    ### XML解析方法详解 #### 一、概述 随着互联网技术和数据交换需求的不断增加,XML(Extensible Markup Language,可扩展标记语言)作为一种重要的数据交换格式,被广泛应用于各种场景之中。XML不仅支持自定义标签...

    C++解析xml文件

    下面我们将详细介绍如何使用TinyXML进行XML解析: 1. **安装TinyXML**: 在项目中添加TinyXML库,通常包括头文件(如`tinyxml.h`)和对应的库文件(如`libtinyxml.a`或`tinyxml.lib`),根据编译器和开发环境的...

    js的XML解析器 可以解析XMl文件和XML字符串

    JavaScript中的XML解析器是用于... - 避免在不支持的浏览器中使用特定的XML解析方法,考虑使用polyfills或降级策略。 通过理解以上知识点,开发者能够更好地在JavaScript环境中处理XML数据,构建高效且健壮的Web应用。

Global site tag (gtag.js) - Google Analytics