一个奇怪的问题也随之而来......我检查几个网站,但没有发现任何错误的代码...但它返回NullPointerException
...Android的XML解析
try {
SAXParserFactory f = SAXParserFactory.newInstance();
SAXParser parser = f.newSAXParser();
XMLReader reader = parser.getXMLReader();
reader.setContentHandler(handler);
System.out.println(uri_this);
reader.parse(new InputSource(url_this.openStream())); // i get nullpointerexception here
} catch (NullPointerException e) {
System.out.println(e);
}
在catch语句我抓到了NullPointerException
,并将其打印出错。
的ContentHandler
很好,因为我有对小文件解析的文件,但对于较大的文件,它似乎并没有工作。问题是什么?或者我需要缓冲更大的文件?我很无能,并且尝试了除缓冲外的所有可能性,因为我不知道编码。
我想出1两件事:输入源的对象被释放之前reader.parse
可以完成。我不明白为什么会发生。
的LogCat
提供了以下(仅错误的部分):
01-06 15:12:27.145: INFO/System.out(319): http://mywebsite.com/products_xml.php?cPath=43
01-06 15:12:31.094: DEBUG/dalvikvm(319): GC freed 4031 objects/203424 bytes in 189ms
01-06 15:12:31.505: DEBUG/dalvikvm(100): GC freed 3326 objects/190192 bytes in 283ms
01-06 15:12:34.274: DEBUG/dalvikvm(319): GC freed 1153 objects/80432 bytes in 146ms
01-06 15:12:34.646: INFO/System.out(319): java.lang.NullPointerException
我得到的URL “url_this” 4米构造函数作为参数。
你可以粘贴NPE的完整堆栈吗? – 2010-01-06 09:40:44
另外,你有没有检查在所谓的错误陈述中的任何引用是否为空? – Samuh 2010-01-06 10:10:24
是的samuh我已经检查了,并且m自信的回合那......因为我早先通知...它运行完美的小文件约1页的xml值...但它为其他人返回空 – JaVadid 2010-01-06 10:13:23