documentbuilderfactory不工作在android 3.0
问题描述:
这是我用于android 2.3的代码。它用来正常工作。 不过不要没有,为什么它似乎并没有在Android 3.0的documentbuilderfactory不工作在android 3.0
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
try
{
try
{
while(this.xml.available()>0)
Log.e("content", ""+this.xml.read());
}
catch (Exception e) {
// TODO: handle exception
Log.e("error", "while reading the file");
}
this.xml.reset();
DocumentBuilder builder = factory.newDocumentBuilder();
Document dom = builder.parse(this.xml);
Element root = dom.getDocumentElement();
Log.d(TAG, "have root?"+dom.getLocalName());;
Log.d(TAG, "have root?"+dom.getInputEncoding());;
Log.d(TAG, "have root?"+dom.getNodeValue());;
}
catch (Exception e)
{
Log.e(TAG, e.getMessage(), e);
}
//Log.d(TAG, "Exit: parse");
return stores;
}
工作的肠子同时显示在数字文件内容。 但是当我得到dom。*我得到null为什么是这样?
任何暗示?
答
现在看起来元素被访问的方式有点不同。
对于其他人来说,看看写作的新方法。
感谢
答
其实有在DOM的Android版本的一些bug的Android 3.0 3.0 这些错误进行校正,有可能是在使用DOM
由你做的旧的实现需要做一些改变之前,请参考此链接
http://code.google.com/p/android/issues/detail?id=2735#c11
干杯 人士Himanshu
答
请勿使用Element root = dom.getDocumentElement();
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
Document dom = builder.parse(stream);
NodeList nodeResponse = dom.getElementsByTagName("rootelement");
root.getTagName()返回正确的头标签..但是当我尝试节点列表项= root.getElementsByTagName( “somenode”);我总是得到零 – 2011-06-07 10:08:55