我想解析來自http請求的響應。這是我從響應取得的字符串:Android SAX XML解析錯誤
<?xml version="1.0" encoding="utf-8"?>
<string xmlns="http://my-web-address.com/webservices/"><NewDataSet>
<Case>
<ID>260023277</ID>
<CaseNumber>8931-04-03</CaseNumber>
</Case>
.
.
.
</NewDataSet></string>
所有元素(用點表示)是有效的。
這裏是我是如何解析使用SAX這個XML:
SAXParserFactory spf = SAXParserFactory.newInstance();
SAXParser sp = spf.newSAXParser();
XMLReader xr = sp.getXMLReader();
InputSource inputSource = new InputSource(new StringReader(responce)); // responce is my String containing XML.
CasesParser myXMLHandler = new CasesParser();
xr.setContentHandler(myXMLHandler);
xr.parse(inputSource);
CaseParser
類擴展DefaultHandler
和傳統的方式實現的所有功能。
所以確切的錯誤是解析器沒有檢測到除「string」元素以外的任何東西。它在startElement()
方法CaseParser
中檢測到它,然後在endElement()
方法中檢測到它。解析器之間找不到其他元素。
檢索「字符串」的值時,我只獲得'<'
字符。沒有其他的。
可能是什麼問題?