我的代码就像
public void parse(String input) throws XmlPullParserException, IOException {
InputStream is = null;
try {
is = new ByteArrayInputStream(input.getBytes("Big-5"));
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
XmlPullParser parser = Xml.newPullParser();
parser.setFeature(XmlPullParser.FEATURE_PROCESS_NAMESPACES,false);
parser.setInput(is,"Big-5");
readFeed(parser);
}
private void readFeed(XmlPullParser parser) throws XmlPullParserException, IOException {
int eventType = parser.getEventType();
while(eventType!=parser.END_DOCUMENT){
String text = parser.getName();
Log.d(TAG,"text:"+text);
eventType=parser.nextTag();
}
}在logcat中也有错误。
01-20 18:41:34.361 17574-17574/global.fantasyfighter.hongkongnews W/System.err﹕ org.xmlpull.v1.XmlPullParserException: expected: /SCRIPT read: script (position:END_TAG </script>@23:10 in java.io.InputStreamReader@428c5000)Xml的前几行:
<meta http-equiv="refresh" content="900" />
<link rel="image_src" href="http://www.hkheadline.com/images/headline_logo_2_2_line_small.jpg">
<SCRIPT LANGUAGE="JavaScript">
<!-- somefunction omitted by author-->
</script>从这个错误中,我知道这是因为XmlPullParser找到了<SCRIPT>,期望在xml中找到了</SCRIPT>,但是找到了</script>。问题是,在解析期间,我不能使XmlPullParser对标记不区分大小写。XmlPullParserException也一直在我的应用程序里。
发布于 2015-02-05 05:57:06
这个怎么样?
if (tagname.equalsIgnoreCase("script"))
{
Code here...
}equalsIgnoreCase
将此字符串与另一个字符串进行比较,忽略大小写注意事项。如果两个字符串具有相同的长度,并且两个字符串中的相应字符相等,忽略大小写,则两个字符串被认为是相等的忽略大小写。
https://stackoverflow.com/questions/28043693
复制相似问题