【问题标题】:Parsing wrong element....I don't know how to parse day解析错误的元素....我不知道如何解析一天
【发布时间】:2023-03-17 13:29:01
【问题描述】:
try {
    InputStream in = getResources().openRawResource(R.raw.database);
    DocumentBuilder builder = DocumentBuilderFactory.newInstance().newDocumentBuilder();
    Document doc = builder.parse(in);

    NodeList Day = doc.getElementsByTagName("day");
}

database.xml

<Day name = "1">
<Day name = "2">

我想我在 NodeList Day 中解析 Day 的名称,但 NodeList Day 总是解析“org.apache.harmony.xml.dom.NodeListImpl@41a14db8”

我想要的是 Day 解析器“1,2,3,4,5,6,7”。如何在 NodeList day 中解析 Day 的值?

【问题讨论】:

  • 发布您的 xml 响应。

标签: java android xml xmlnodelist


【解决方案1】:

您正在解析元素(至少就我们所见而言) - 这只是您对结果所做的事情是错误的。你有一个NodeList。调用 toString() 不是您想要的 - 您正在尝试获取每个节点的 name 属性。比如:

NodeList dayNodes = doc.getElementsByTagName("day");
List<String> dayNames = new List<String>();
for (int i = 0; i < dayNodes.getLength(); i++) {
    Element day = (Element) dayNodes.item(i);
    dayNames.add(day.getAttribute("name"));
}

...然后对列表做任何你想做的事情(例如,如果你真的想将它转换成一个逗号分隔的字符串)。

【讨论】:

    猜你喜欢
    • 2020-04-19
    • 1970-01-01
    • 1970-01-01
    • 2020-02-08
    • 2018-10-15
    • 2021-11-26
    • 1970-01-01
    • 1970-01-01
    • 2011-05-26
    相关资源
    最近更新 更多