`

XML工具类

阅读更多

 

 

package com.cn.util;

 

import java.io.File;

import java.util.ArrayList;

import java.util.HashMap;

import java.util.Iterator;

import java.util.List;

import java.util.Map;

 

import org.dom4j.Document;

import org.dom4j.DocumentHelper;

import org.dom4j.Element;

import org.dom4j.io.SAXReader;

 

 

/**

 * XML解析

 */

public class XMlUtil {

public static void main(String[] args) throws Throwable {

String reString = XMlUtil.getXmlString("G:\\XMLFile1.xml");

List<Map<String, Object>> list = (List<Map<String, Object>>) XMlUtil.readXMLByString(reString,"datalist/data/bill_base");

for (Map<String, Object> map : list) {

System.out.println(map.get("bill_uuid"));

}

}

 

/**

* 节点解析

* @return List<Map<String, Object>>

* @param XML格式的字符串

* @throws Throwable

*/

@SuppressWarnings("unchecked")

public static List<?> readXMLByString(String xmlStr,String node) throws Throwable {

List<Map<String, Object>> result = new ArrayList<Map<String,Object>>();

Map<String, Object> map = new HashMap<String, Object>();

try {

Element root =DocumentHelper.parseText(xmlStr).getRootElement(); 

List list = root.selectNodes(node);

for (int i = 0; i < list.size(); i++) {

Element ele = (Element)list.get(i);

for ( Iterator j = ele.elementIterator(); j.hasNext(); ) { 

Element el = (Element) j.next(); 

map.put(el.getName(), el.getText());

}

}

result.add(map);

} catch (Exception e) {

throw e;

}

return result;

}

/**

* 节点解析

* @return List<Map<String, Object>>

* @param  XML文件路径

* @throws Throwable 

*/

@SuppressWarnings("unchecked")

public static List<?> readXMLByFilePath(String path,String node) throws Throwable {

List<Map<String, Object>> result = new ArrayList<Map<String,Object>>();

Map<String, Object> map = new HashMap<String, Object>();

try {

Document document = getXmlDocument(path);

Element root = document.getRootElement();  

List list = root.selectNodes(node);

for (int i = 0; i < list.size(); i++) {

Element ele = (Element)list.get(i);

for ( Iterator j = ele.elementIterator(); j.hasNext(); ) { 

Element el = (Element) j.next(); 

map.put(el.getName(), el.getText());

}

}

result.add(map);

} catch (Exception e) {

throw e;

}

return result;

}

/**

* 读取XML文件转成字符串

* @param 文件路径

* @return 读取的字符串

* @throws Exception

*/

public static String getXmlString(String path) throws Exception {

String result = "";

try {

Document document = getXmlDocument(path);

result = document.asXML();

} catch (Exception e) {

throw e;

}

return result;

}

private static Document getXmlDocument(String path) throws Exception{

Document document = null;

try {

File xmlFile=new File(path);

SAXReader saxReader = new SAXReader();

document = saxReader.read(xmlFile);

} catch (Exception e) {

throw e;

}

return document;

}

}


分享到:
评论

相关推荐

    JS操作XML工具类XmlUtils

    XmlUtils JS操作XML工具类 **  * 加载xml文件,参数:  * @param {string} xmlPath:加载的xml文件路径; * @return {Object} true 正常加载; false 加载失败 *

    java一键xml转map,一键map转xml工具类

    本文将详细讲解如何使用Java实现XML到Map以及Map到XML的一键转换,并介绍一个已封装好的工具类`EasyXmlUtil`。 首先,XML到Map的转换涉及到XML的解析。在Java中,我们可以使用`javax.xml.parsers....

    解析xml工具类

    xml工具类

    Java解析XML工具类--(java源码)

    * 本类是专门解析XML文件的,主要用于为系统读取自己的配置文件时提供最方便的解析操作 * @author HX * */ public class XmlManager { /** * 得到某节点下某个属性的值 * @param element 要获取属性的...

    java xml解析工具类 java xml解析工具类

    java xml解析工具类 java xml解析工具类java xml解析工具类 java xml解析工具类java xml解析工具类 java xml解析工具类java xml解析工具类 java xml解析工具类java xml解析工具类 java xml解析工具类java xml解析...

    java通用解析XML工具类

    本文将详细介绍如何创建一个Java通用的XML解析工具类,以便于在项目中复用和简化XML处理。 首先,我们来看DOM解析方式。DOM解析器会将整个XML文档加载到内存中,形成一棵树形结构,便于对XML进行随机访问。以下是一...

    Java,一个XML工具类

    提供2个方法: (1)XMLUtil.getValue(String tag,String attr); 获取指定tag的指定attr的值。...两个函数的返回值是ArrayList,每个XMLResult包括获得的值/内容,对应tag在整个xml结构中的位置。 复出了,请大家支持。

    json与xml互相转换工具类

    json与xml互相转换工具类

    基于安卓的XML工具类

    基于安卓的XML工具类

    c++读取xml工具类TinyXml

    首先,`tinyxml.h`是TinyXml的核心头文件,它包含了所有的类定义和接口声明。其中最主要的类有以下几个: 1. **TiXmlDocument**: 代表整个XML文档,可以加载XML文件或者创建一个新的XML文档。 2. **TiXmlElement**:...

    json和xml工具类

    本篇文章将深入探讨如何使用自定义的工具类`AppUtil`来简化JSON和XML的生成过程。 首先,JSON是一种轻量级的数据交换格式,它基于JavaScript语法,但独立于语言,易于人阅读和编写,同时也易于机器解析和生成。JSON...

    java的xml和json相互转换工具类,亲测直接用

    本篇文章将详细介绍Java中如何实现XML和JSON的相互转换,并提供一个名为`XmlToJson.java`的工具类作为参考。 首先,XML是一种结构化的数据表示方式,它以树形结构存储数据,易于人类阅读和编写,同时也易于机器解析...

    java Dom4j 无敌连环解析XML工具类

    在本教程中,我们将深入探讨如何使用DOM4J来解析XML文件,并创建一个无敌连环解析工具类。 首先,我们需要了解XML的基本概念。XML(可扩展标记语言)是一种标记语言,常用于数据交换和存储。它的结构化特性使其非常...

    xml与实体类转换工具

    本文将详细介绍如何使用工具类进行XML与实体类的转换,并探讨相关依赖和实现方法。 首先,XML转换为Java实体类的基本原理是通过解析XML文档,创建对应的Java对象。Java中常用的库有JAXB(Java Architecture for XML...

    java的xml和json相互转换工具类,直接用

    实现的一个简单的基于java 的,可以在xml和json之间相互转换的工具类,因为实在没有积分了,所以要点积分,希望理解~

    pull解析器解析XML工具类

    本文将详细介绍基于Pull解析器的XML解析生成工具类的实现,以及如何将XML文件转换为对象和将对象转换为XML文件。 1. **XML解析器的初始化** 在使用Pull解析器之前,首先需要通过`XmlPullParserFactory`工厂类创建`...

    java常用工具类 XML工具类、数据验证工具类

    Java常用工具类XML工具类、数据验证工具类知识点介绍 一、XML工具类 XML工具类是Java中的一种常用工具类,用于处理XML文档。XML工具类提供了多种方法来处理XML文档,例如解析XML文档、转换XML文档、验证XML文档等...

    JAVA对象序列化保存为XML文件的工具类

    【JAVA对象序列化保存为XML文件的工具类】 在Java编程中,对象序列化是一种将对象的状态转换为字节流的过程,以便可以存储或在网络上传输。而在反序列化时,这个字节流又可以恢复为原来的对象。Java提供了一个方便...

    JAXB工具类 xml转为java对象 java对象转为xml

    JAXB是Java开发中处理XML的强大工具,通过注解和API实现了XML与Java对象的自动转换。了解并熟练掌握JAXB,能够提升XML数据处理的效率和代码的可读性。在实际项目中,结合JAXB与XML Schema,可以构建更健壮、易于维护...

Global site tag (gtag.js) - Google Analytics