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

java解析XML文件

    博客分类:
  • java
 
阅读更多

解析报文:

<?xml version="1.0" encoding="UTF-8"?>

<root>

<fieldmap>

<field name="response_um" type="10"/>

<field name="response_code" type="3"/>

</fieldmap>

<datas>

<row col1="MAJIAN034" col2="1"/>

</datas>

<callresult errormessage=""/>

</root>

 

直接上代码:


import java.io.ByteArrayInputStream;

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

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

public class XmlParse {
	
	private static String getValue(Element pNode, String tagName) {
		NodeList nl = pNode.getElementsByTagName(tagName);
		if (nl.getLength() > 0) {
			return getInnerText(nl.item(0));
		}
		return null;
	}

	private static String getInnerText(Node pNode) {

		StringBuffer sb = new StringBuffer();
		Node n1 = pNode.getAttributes().getNamedItem("col1");
		Node n2 = pNode.getAttributes().getNamedItem("col2");
		System.out.println("UM: "+n1.getNodeValue());
		System.out.println("CODE: "+n2.getNodeValue());
		for (int i = 0; i < pNode.getChildNodes().getLength(); i++) {
			Node node = pNode.getChildNodes().item(i);
			if (node.getNodeType() == Node.TEXT_NODE) {
				sb.append(node.getNodeValue());
			}
		}
		return sb.toString();
	}
	
	public static void main(String[] args) throws Exception {
		//解析xml串
		String content = "<?xml version=\"1.0\" encoding=\"UTF-8\"?><root><fieldmap><field name=\"response_um\" type=\"10\"/><field name=\"response_code\" type=\"3\"/></fieldmap><datas><row col1=\"MAJIAN034\" col2=\"1\"/></datas><callresult errormessage=\"\"/></root>";
		ByteArrayInputStream is = new ByteArrayInputStream(content
				.getBytes("UTF-8"));
		DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
		DocumentBuilder db = dbf.newDocumentBuilder();
		Document doc = db.parse(is);
		Element root = doc.getDocumentElement();
		getValue(root, "row");
	}
}

 

运行结果:

UM: MAJIAN034

CODE: 1

 

分享到:
评论

相关推荐

    JAVA 解析XML生成XML文档实例

    JAVA 解析XML和生成XML文档源码。比较全 1.DOM生成和解析XML文档 2.SAX生成和解析XML文档 3.DOM4J生成和解析XML文档 4.JDOM生成和解析XML

    使用java解析XML文件,解析完之后将解析结果导入mysql数据库中

    本教程将介绍如何使用Java解析XML文件,并将解析结果导入MySQL数据库。 首先,我们需要引入处理XML的Java库——JAXB(Java Architecture for XML Binding)和DOM(Document Object Model)API。JAXB用于对象与XML...

    Java 解析xml文档

    Java解析XML文档是Java开发中常见的任务,XML(Extensible Markup Language)作为一种可扩展标记语言,广泛用于数据交换、配置存储等场景。本项目涵盖了三种主流的Java XML解析方法:SAX、DOM以及DOM4J,并提供了...

    Java解析Xml文件

    Java解析XML文件是一种常见的任务,尤其在处理结构化数据或者与服务器进行数据交换时。XML(eXtensible Markup Language)是一种标记语言,用于存储和传输数据,具有良好的可读性和可扩展性。在Java中,有多种方式来...

    Java解析XML文件的DOM和SAX方式.doc

    Java 解析 XML 文件的 DOM 和 SAX 方式 Java 解析 XML 文件的 DOM 和 SAX 方式是指在 Java 中使用 Document Object Model(DOM)和 Simple API for XML(SAX)两种方式来解析 XML 文件的技术。下面将详细介绍这两种...

    Java解析XML文件

    ### Java解析XML文件:DOM与SAX解析技术详解 #### DOM解析:JAXP与Crimson解析器 DOM(Document Object Model),即文档对象模型,是W3C为XML文档定义的一种标准接口,用于在各种编程语言中操作XML文档。DOM将XML...

    java解析xml文件

    Java解析XML文件是一种常见的任务,尤其在处理结构化数据或与Web服务交互时。XML(eXtensible Markup Language)是一种标记语言,用于存储和传输数据。本程序使用Java来解析XML文件,提取其中的数据并根据需要进行...

    java解析xml文档的常用方法

    "java解析xml文档的常用方法" Java 解析 XML 文档的常用方法有四种:DOM、SAX、JDOM 和 DOM4J。下面对这四种方法进行详细的介绍: 1. 使用 DOM(JAXP Crimson 解析器) DOM(Document Object Model)是一种以层次...

    java解析XML的四种方式

    ### Java解析XML的四种方式详解 #### 一、DOM(Document Object Model) DOM是一种平台和语言中立的接口,它将XML文档表示为一个树结构,使得程序可以创建、读取、更新或删除树中的元素。DOM实现了W3C的标准,能够...

    java 解析xml 多级

    Java作为一种广泛使用的后端编程语言,提供了多种方式来解析XML文档,使得处理多级嵌套的数据变得可能。本文将详细讲解如何在Java中解析XML,特别是针对多级结构的情况。 首先,Java提供了两种主要的API来处理XML:...

    java解析xml文档方式

    ### Java解析XML文档方式 #### 引言 随着互联网的发展,XML(可扩展标记语言)因其平台、语言和系统的无关性,在数据交换和集成中扮演着至关重要的角色。本文将深入探讨Java中解析XML的四种主要方法:DOM、SAX、...

    java解析XML文件DOMO

    Java解析XML文件主要依赖于Java API中的DOM(Document Object Model)、SAX(Simple API for XML)和StAX(Streaming API for XML)等解析器。在本案例中,我们重点讨论DOM解析器,DOMO通常指的是DOM操作。DOM解析器...

    Java解析XML.zip

    本压缩包“Java解析XML.zip”包含了两个关键的第三方库:jaxen-1.1.1.jar和dom4j-1.6.1.jar,它们是Java解析XML文件的重要工具。 首先,让我们了解一下**DOM4J**。DOM4J是一个强大的Java XML API,它提供了灵活且高...

    java解析xml字符串

    ### Java解析XML字符串 在给定的代码示例中,我们看到了如何使用JDOM库来解析一个XML字符串,并对其进行操作。下面我们将详细解析这个过程: 1. **初始化XML源**:首先,将XML字符串转化为`StringReader`对象,这...

    java实现xml解析word文档代码实现

    Java 实现 XML 解析 Word 文档代码实现 基于给定的文件信息,我们可以总结出以下知识点: 1. Java 实现 XML 解析 Word 文档 Java 可以使用多种方式来解析 Word 文档,包括使用 Apache POI 库、Java2Word 库等。...

    java解析xml文件的例子(三中方式的都有,很全)

    本示例提供了三种不同的方法来解析XML文件,并结合了数据库连接,特别是使用Oracle数据库。下面将详细介绍DOM、SAX和DOM4J这三种解析器的工作原理以及如何在Java中实现它们。 1. DOM(文档对象模型)解析: DOM是一...

    Java解析XML文档[归类].pdf

    Java解析XML文档主要涉及到两种方式:SAX和DOM。本文主要关注基于树和节点的DOM解析方法。DOM解析器将整个XML文档加载到内存中,形成一个树状结构,允许开发者通过API遍历和操作XML文档的每一个部分。 首先,DOM...

Global site tag (gtag.js) - Google Analytics