Java 从XML解析映射
这是我的xmlJava 从XML解析映射,java,xml,xpath,Java,Xml,Xpath,这是我的xml <body> <map> <key1> value1 </key1> <key2> value2 </key2> .... </map> <body> 价值1 价值2 .... 我有: Document xPac
<body>
<map>
<key1>
value1
</key1>
<key2>
value2
</key2>
....
</map>
<body>
价值1
价值2
....
我有:
Document xPacket;
XPath xPath = XPathFactory.newInstance().newXPath();
Map<Integer, String> temp = new HashMap<Integer, String>();
Object rawMap = xPath.compile("//body/map/").evaluate(xPacket, XPathConstants.NODESET);
NodeList mapNodeList = (NodeList) rawMap;
documentxpacket;
XPath=XPathFactory.newInstance().newXPath();
Map temp=newhashmap();
对象rawMap=xPath.compile(“//body/map/”).evaluate(xPacket,xpathcontents.NODESET);
节点列表映射节点列表=(节点列表)rawMap;
但是如何遍历
NodeList
并在map中填充值呢?既然您没有另外指定,我假设您使用的是标准Java库的类
对象有一个项(int)
方法。您可以使用该方法在节点列表中的节点之间循环:
Map<Integer, String> map = new HashMap();
for (int i = 0; i < aNodeList.getLength(); i++) {
Node item = aNodeList.item(i);
map.put(Integer.valueOf(item.getTextContent()), item.getLocalName());
}
Map Map=newhashmap();
对于(int i=0;i
这里我假设您希望将XML键节点的文本内容映射到节点的名称(因为映射的类型参数) NodeList有什么方法吗?它们是什么?类似于获取名称、属性或子节点的方法吗?