-1

我需要解析这个,以便我可以获得MMV的属性和所有CS标签的所有属性

<MMV val="Configdes000110010101">  
  <CS protocol="SNMP" CommandString="wmanIfBsDcdInterval" 
      oid="1.3.6.1.2.1.10.184.1.1.2.2.1.1" Get_SecurityString="public" 
      Set_SecurityString="public" type="INTEGER" > </CS>  
  <CS protocol="SNMP" CommandString="wmanIfBsUcdInterval" 
      oid="1.3.6.1.2.1.10.184.1.1.2.2.1.2" Get_SecurityString="public" 
      Set_SecurityString="public" type="INTEGER" > </CS>  
  <CS protocol="SNMP" CommandString="wmanIfBsUcdTransition" 
      oid="1.3.6.1.2.1.10.184.1.1.2.2.1.3" Get_SecurityString="public" 
      Set_SecurityString="public" type="INTEGER" > </CS>  
  <CS protocol="SNMP" CommandString="wmanIfBsDcdTransition" 
      oid="1.3.6.1.2.1.10.184.1.1.2.2.1.4" Get_SecurityString="public"  
      Set_SecurityString="public" type="INTEGER" > </CS>  
</MMV>
4

4 回答 4

2

您将需要一个 XML 解析器,最好是一个支持 XPath 的引擎。我使用 XOM (Java) http://www.xom.nu并且会写一个 XPath 表达式,比如

Nodes attributes = document.query("//MMV@*");

这将给出所有 MMV 属性的所有属性。相似地

Nodes attributes = document.query("//CS@*");

XML 发布后更新

Node valAttribute = document.query("MMV@val").get(0); 

并且 CS 版本应该仍然可以工作或

Nodes csAttributes = document.query("MMV/CS@*");

或者,这可以使用 XSLT 来完成。

注意:您要求提供属性;您实际上可能只需要属性值

于 2009-11-25T06:38:08.643 回答
1

试试 JAXB。它将解析 XML 并将属性绑定到对象。您可以从 XML 创建 XSD,JAXB 将生成类文件并进行解析。

于 2009-11-25T07:27:19.943 回答
1

您可以使用 DOM/SAX/Pull Parser 来提取所需的信息。选择取决于 XML 的大小和您想要做什么。

于 2009-11-25T06:39:24.660 回答
1

你可以使用jdom,它有一个简单的api,很容易使用。

于 2009-11-25T06:46:20.590 回答