早些时候,在解析数据时,我从来没有得到过这样的Exception
,但是今天我突然得到了TAG mismatch Exception
。我不知道我哪里弄错了。请帮帮我。
网址解析:http://development.21stcenturymart.com/TopCategory.php
错误跟踪:
03-18 12:52:08.070: W/System.err(10156): org.apache.harmony.xml.ExpatParser$ParseException: At line 35, column 2: mismatched tag
03-18 12:52:08.070: W/System.err(10156): at org.apache.harmony.xml.ExpatParser.parseFragment(ExpatParser.java:515)
03-18 12:52:08.070: W/System.err(10156): at org.apache.harmony.xml.ExpatParser.parseDocument(ExpatParser.java:474)
03-18 12:52:08.070: W/System.err(10156): at org.apache.harmony.xml.ExpatReader.parse(ExpatReader.java:321)
03-18 12:52:08.070: W/System.err(10156): at org.apache.harmony.xml.ExpatReader.parse(ExpatReader.java:279)
03-18 12:52:08.070: W/System.err(10156): at com.centuery.ctl21.Centuary_MainActivity$Toplist.doInBackground(Centuary_MainActivity.java:697)
03-18 12:52:08.070: W/System.err(10156): at com.centuery.ctl21.Centuary_MainActivity$Toplist.doInBackground(Centuary_MainActivity.java:1)
03-18 12:52:08.070: W/System.err(10156): at android.os.AsyncTask$2.call(AsyncTask.java:287)
03-18 12:52:08.070: W/System.err(10156): at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:305)
03-18 12:52:08.070: W/System.err(10156): at java.util.concurrent.FutureTask.run(FutureTask.java:137)
03-18 12:52:08.070: W/System.err(10156): at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:230)
03-18 12:52:08.070: W/System.err(10156): at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1076)
03-18 12:52:08.070: W/System.err(10156): at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:569)
03-18 12:52:08.070: W/System.err(10156): at java.lang.Thread.run(Thread.java:856)
源代码
SAXParserFactory spf=SAXParserFactory.newInstance();
SAXParser sp= spf.newSAXParser();
XMLReader xr=sp.getXMLReader();
URL soUrl=new URL(CommonUtilities.url_TopCategoy);
CategoryHandler dh = new CategoryHandler();
xr.setContentHandler(dh);
xr.parse(new InputSource (soUrl.openStream()));
Log.v("urllllllllllllllll",""+soUrl);
发布于 2014-03-23 22:22:17
最后,经过这么长时间的斗争,终于找到了解决办法。我的问题是我的Wifi连接。它没有连接到经过验证的Wifi连接。因此,要检查Wifi是否启用或禁用,请运行以下代码:您可以注册一个BroadcastReceiver,以便在建立WiFi连接时得到通知(或者连接是否更改)。注册BroadcastReceiver:
IntentFilter intentFilter = new IntentFilter();
intentFilter.addAction(WifiManager.SUPPLICANT_CONNECTION_CHANGE_ACTION);
registerReceiver(broadcastReceiver, intentFilter);
And then in your BroadcastReceiver do something like this:
@Override
public void onReceive(Context context, Intent intent) {
final String action = intent.getAction();
if (action.equals(WifiManager.SUPPLICANT_CONNECTION_CHANGE_ACTION)) {
if (intent.getBooleanExtra(WifiManager.EXTRA_SUPPLICANT_CONNECTED, false)){
//do stuff
} else {
// wifi connection was lost
}
}
}
有关更多信息,请参见BroadcastReceiver和WifiManager的文档
当然,在此之前,您应该检查设备是否已经连接到WiFi。
https://stackoverflow.com/questions/22473125
复制