【发布时间】:2016-01-26 15:43:00
【问题描述】:
我正在尝试从我的 XML(图像和文本)中解析值,但是当我想在应用程序中返回每个单独的值时,这段代码只是一遍又一遍地返回相同的值。谁能告诉我该怎么做?当我尝试通过它运行(i)时,我收到此错误当我尝试该代码时,它会引发此错误: 无法启动活动 ComponentInfo{com.example.shannon.dogs/com.example.shannon.dogs.ActivityOne}:java.lang.NullPointerException:尝试调用接口方法 'org.w3c.dom.Node org.w3c.dom。空对象引用上的 Node.getFirstChild()' –
NodeList nameNodeList = doc.getElementsByTagName("name");
NodeList originNodeList = doc.getElementsByTagName("origin");
NodeList colorNodeList = doc.getElementsByTagName("color");
NodeList imageNodeList = doc.getElementsByTagName("image");
NodeList heightNodeList = doc.getElementsByTagName("height");
NodeList weightNodeList = doc.getElementsByTagName("weight");
NodeList groomingNodeList = doc.getElementsByTagName("grooming");
//NodeList infoNodeList = doc.getElementsByTagName("info");
NodeList lifespanNodeList = doc.getElementsByTagName("lifespan");
NodeList urlNodeList = doc.getElementsByTagName("url");
//create data
data = new Dog[nameNodeList.getLength()];
for (int i = 0; i < data.length; i++) {
data[i] = new Dog(
nameNodeList.item(0).getFirstChild().getNodeValue(),
originNodeList.item(0).getFirstChild().getNodeValue(),
colorNodeList.item(0).getFirstChild().getNodeValue(),
imageNodeList.item(0).getFirstChild().getNodeValue(),
heightNodeList.item(0).getFirstChild().getNodeValue(),
weightNodeList.item(0).getFirstChild().getNodeValue(),
groomingNodeList.item(0).getFirstChild().getNodeValue(),
lifespanNodeList.item(0).getFirstChild().getNodeValue(),
urlNodeList.item(0).getFirstChild().getNodeValue());
//infoNodeList.item(i).getFirstChild().getNodeValue(), //);
}
【问题讨论】:
-
这是一个简单的for循环逻辑,在问这样的问题之前你需要尝试一下。
-
请查看我编辑的问题 - 每次我尝试通过它运行(i)时都会出错。