hii每一个,,,在下面的代码片段中解析一个xml文件,在互联网上,使用url am access,但我需要解析一个本地xml(比如说存放在项目的xml文件夹中的文件) )请任何人给我的语法加载本地xml的路径在URL ,,,(我是Android的全新),, thanx提前
public class XMLComplaint extends Activity { private int window = 0; private String s1,s2,s3,s4,s5,s6; String str1,str2,str3,str4,str5,str6,str7,str8,str9,str10,str11,str12,str13,str14,sidsize; private ArrayList notedetails = new ArrayList(); ArrayList problemdetails = new ArrayList(); ArrayList totaldetails = new ArrayList();
private ImageButton left,right;
private TextView Gid;
ListView notelist = null,problemlist=null,totallist=null;
private ArrayAdapter<String> totaladapter = null;
private List<GroupInfo> commonlist ;
private GroupInfo gi ;
MyHandler myhandler=new MyHandler();
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Gid=(TextView)findViewById(R.id.Gid);
left=(ImageButton)findViewById(R.id.left);
right=(ImageButton)findViewById(R.id.right);
totallist = (ListView) this.findViewById(R.id.Listview1);
try {
URL myurl=new URL("http://www.compliantbox.com/docprocessor/sync.php");
SAXParserFactory spf=SAXParserFactory.newInstance();
SAXParser sp=spf.newSAXParser();
XMLReader xr=sp.getXMLReader();
xr.setContentHandler(myhandler);
xr.parse(new InputSource(myurl.openStream()));
commonlist=myhandler.getGroups();
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (ParserConfigurationException e) {
e.printStackTrace();
} catch (SAXException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
if(commonlist != null){
gi= commonlist.get(window);
Gid.setText(gi.getGroupName());
notedetails.addAll(gi.getNoteNameList());
problemdetails.addAll(gi.getProblemNameList());
totaldetails.addAll(notedetails);
totaldetails.addAll(problemdetails);
totaladapter = new ArrayAdapter<String>(getApplicationContext(), R.layout.datalook,totaldetails);
totallist.setAdapter(totaladapter);
left.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
right.setEnabled(true);
window--;
if(window>=0){
notedetails.clear();
problemdetails.clear();
totaldetails.clear();
gi= commonlist.get(window);
Gid.setText(gi.getGroupName());
notedetails.addAll(gi.getNoteNameList());
problemdetails.addAll(gi.getProblemNameList());
totaldetails.addAll(notedetails);
totaldetails.addAll(problemdetails);
totaladapter = new ArrayAdapter<String>(getApplicationContext(), R.layout.datalook,totaldetails);
totallist.setAdapter(totaladapter);
}else{
left.setEnabled(false);
window++;
}
}});
答案 0 :(得分:0)
您可以尝试通过以下方式获取资源的输入流:
InputStream is = getResources().openRawResource(R.xml.my_xml);
....
xr.parse(new InputSource(is)));
而不是:
URL myurl=new URL("http://www.compliantbox.com/docprocessor/sync.php");
...
xr.parse(new InputSource(myurl.openStream()));
希望有所帮助:)