首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >获取XML中内部节点的属性

获取XML中内部节点的属性
EN

Stack Overflow用户
提问于 2015-02-19 10:35:54
回答 4查看 504关注 0票数 0

我有下一个XML文件

代码语言:javascript
复制
<cities>
<country name="Абхазия">
    <city id="37188" region="27028" head="" type="3" country="Абхазия" part="" resort="" climate="">Новый Афон</city>
</country> 
</cities>

我需要从内部城市节点获取id属性。我已经完成了下一段代码,但是我不知道如何进行:

代码语言:javascript
复制
        Document doc = parser.getDomElement(xml);
        NodeList nl = doc.getElementsByTagName(KEY_COUNTRY);

        for (int i = 0; i < nl.getLength(); i++) {

            Element e = (Element) nl.item(i);
            String city = parser.getValue(e, KEY_CITY);

        }
EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2015-02-19 10:45:36

代码语言:javascript
复制
    NodeList nodeList = doc.getElementsByTagName("city");
    for (int i = 0; i < nodeList.getLength(); i++) {
        String id = nodeList.item(i).getAttributes().getNamedItem("id").getTextContent();
        //  do something with 'id'
        String cityName = nodeList.item(i).getTextContent();
        //  do something with 'cityName'
    }
票数 1
EN

Stack Overflow用户

发布于 2015-02-19 10:44:51

用这种方法。

代码语言:javascript
复制
NodeList nl = doc.getElementsByTagName("City");

        for (int i = 0; i < nl.getLength(); i++) {
            Node nNode = nl.item(i);
            if (nNode.getNodeType() == Node.ELEMENT_NODE) {
                Element eElement = (Element) nNode;

                String id = eElement.getAttribute("id");

            }
        }
票数 2
EN

Stack Overflow用户

发布于 2015-02-19 10:49:10

代码语言:javascript
复制
for(int i = 0; i < nl.getLength(); i++){ 
        Node n = nl.item(i);
        if (n.getNodeType() == Node.ELEMENT_NODE) {
            Element e = (Element)n;
            String yourId = e.getAttribute("KEY_CITY");
        }


}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28604108

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档