我已经开发了以下类来检索XML文档的节点列表:

public class XMLDownloader {
    public static NodeList getNodeList(){   
        String url = "http://localhost/xml/example.xml";
        DefaultHttpClient client = new DefaultHttpClient();
        HttpGet method = new HttpGet(url);
        HttpResponse res = null;
        NodeList result = null;

        try {
            res = client.execute(method);
        } catch (ClientProtocolException e1) {
            e1.printStackTrace();
        } catch (IOException e1) {
            e1.printStackTrace();
        }

        try{
            InputStream is = res.getEntity().getContent();
            DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
            DocumentBuilder db = dbf.newDocumentBuilder();
            Document doc = db.parse(is);
            doc.getDocumentElement().normalize();
            result = doc.getElementsByTagName("client");                         
            is.close();

        }catch(Exception e){
             Log.e("log_tag", "Error converting result "+e.toString());
        }       
        return result;              
    }
}

但是此方法返回 null. 。有任何想法吗?

XML文件:

<status>
<client type="s" name="test1" protocol="1000">
      </client>
<client type="r" name="test2" protocol="2000"> 
      </client>
<client type="r" name="test3" protocol="3000"> 
      </client>
<client type="h" name="test4" protocol="4000"> 
      </client>
<client type="c" name="test5" protocol="5000"> 
      </client>
</status>
有帮助吗?

解决方案

该问题中发布的代码实际上对我有用,没有任何错误。我得到了一个结节,其中包含预期的5个元素。我在运行2.2的模拟器上尝试了它。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top