JAVA 解析xml字符串

Posted 微木Vmumu

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JAVA 解析xml字符串相关的知识,希望对你有一定的参考价值。

导入dom4j jar包

final String returnXML = "<xml><return_code><![CDATA[SUCCESS]]></return_code><return_msg><![CDATA[OK]]></return_msg><appid><![CDATA[wx8440b01badf5be52]]></appid><mch_id><![CDATA[1403452402]]></mch_id><nonce_str><![CDATA[VtgwoXiY23023w74]]></nonce_str><sign><![CDATA[39905078A04123151ED5F4399DAD042C]]></sign><result_code><![CDATA[SUCCESS]]></result_code><prepay_id><![CDATA[wx20170802095241a3dd4b58f60170434577]]></prepay_id><trade_type><![CDATA[JSAPI]]></trade_type></xml>";
Map<Object, Object> mapXML = new HashMap<Object, Object>();
			Document doc;
try
			{
				doc = DocumentHelper.parseText(returnXML);
				final Element el = doc.getRootElement();
				mapXML = recGetXmlElementValue(el, mapXML);
				LOG.info("========" + mapXML.size() + "+++" + mapXML.get("return_code"));
				if (mapXML.get("return_code").equals("SUCCESS"))
				{
					//操作
				}
			}
			catch (final DocumentException e)
			{
				e.printStackTrace();
				return null;
			}

private static Map<Object, Object> recGetXmlElementValue(final Element ele, final Map<Object, Object> map)
	{
		final List<Element> eleList = ele.elements();
		if (eleList.size() == 0)
		{
			map.put(ele.getName(), ele.getTextTrim());
			return map;
		}
		else
		{
			for (final Iterator<Element> iter = eleList.iterator(); iter.hasNext();)
			{
				final Element innerEle = iter.next();
				recGetXmlElementValue(innerEle, map);
			}
			return map;
		}
	}

  

以上是关于JAVA 解析xml字符串的主要内容,如果未能解决你的问题,请参考以下文章

在java中解析xml有哪几种方法

java解析xml的几种方式哪种最好?

从流输入中解析没有根元素的 XML 片段列表

从 XML 声明片段获取 XML 编码:部分内容解析不支持 XmlDeclaration

将字符串 XML 片段转换为 Java 中的文档节点

在java中用啥方法解析xml能过滤掉回车,换行符等!!!!!!????求代码!!!