我试图实现SAXParsing ...我在手机上运行我的应用程序时遇到异常,但是当我在Android 2.2 AVD上运行它时,应用程序运行正常。 请查看我的代码。 我删除了我正在解析的网址,因为我不习惯在公开场合展示它。
public class ZodiacXMLParsing extends Activity{
String mainURL="http://www.myURL/zodiac.xml";
TextView tv;
@Override
protected void onCreate(Bundle zodiac) {
// TODO Auto-generated method stub
super.onCreate(zodiac);
setContentView(R.layout.zodiacxmlparsing);
tv=(TextView)findViewById(R.id.tv);
try{
URL website=new URL(mainURL);
SAXParserFactory spf=SAXParserFactory.newInstance();
SAXParser sp=spf.newSAXParser();
XMLReader xr=sp.getXMLReader();
HandlingXMLStuff handle=new HandlingXMLStuff();
xr.setContentHandler(handle);
xr.parse(new InputSource(website.openStream()));
String information=handle.getInformation();
tv.setText(information);
}catch(Exception e){
Toast.makeText(ZodiacXMLParsing.this, "Error", Toast.LENGTH_SHORT).show();
}
}
}
公共类HandlingXMLStuff扩展了DefaultHandler {
XMLDataCollected info=new XMLDataCollected();
public String getInformation(){
return info.set();
}
@Override
public void startElement(String uri, String localName, String qName,
Attributes attributes) throws SAXException {
// TODO Auto-generated method stub
if(localName.equals("aries")){
String aries=attributes.getValue("data");
info.get(aries);
}
}
}
公共类XMLDataCollected {
String contents;
public void get(String z){
contents=z;
}
public String set(){
return contents;
}
}
答案 0 :(得分:1)
我没有看到AsyncTask。由于您尚未发布错误日志,我认为这是您的问题。