我想在ListView中显示各大洲的名称,我们称之为 listContinents 。在选择例如US之后,我想在那里显示所有状态,我们称之为 ListStates 。选择特定州后,我想显示该州的所有城市,我们称之为 ListCity 。选择城市后,我想显示有关该城市的一些信息,我们称之为 listCityInfo 。这是我上面所说的总结。
大陆>> 状态>> 城市>>的信息即可。
如何创建一个包含所有信息并从中读取的XML文件?基本上我不知道如何制作它。我将信息存储在html文件中,因此我应该将其转换为XML文件。这是要走的路吗?
如果XML文件包含所有信息,我将如何阅读它?如果XML文件只包含大陆,州或城市,我知道如何阅读,但不是全部都在那里。我如何使其工作?我不想创建超过500个包含每个州的城市的XML文件,这将浪费时间。
有人可以使用任何示例向我说明这是如何工作的,还是将我链接到有用的网站?
我将不胜感激,谢谢!
答案 0 :(得分:0)
我将如何做到这一点。
答案 1 :(得分:-1)
File newxmlfile = new File("/data/com.itwine/emergency.xml");
try{
newxmlfile.createNewFile();
}catch(IOException e){
Log.e("IOException", "exception in createNewFile() method");
}
//we have to bind the new file with a FileOutputStream
FileOutputStream fileos = null;
try{
fileos = new FileOutputStream(newxmlfile);
}catch(FileNotFoundException e){
Log.e("FileNotFoundException", "can't create FileOutputStream");
}
//we create a XmlSerializer in order to write xml data
XmlSerializer serializer = Xml.newSerializer();
try {
//we set the FileOutputStream as output for the serializer, using UTF-8 encoding
serializer.setOutput(fileos, "UTF-8");
//Write <?xml declaration with encoding (if encoding not null) and standalone flag (if standalone not null)
serializer.startDocument(null, Boolean.valueOf(true));
//set indentation option
serializer.setFeature("http://xmlpull.org/v1/doc/features.html#indent-output", true);
//start a tag called "root"
serializer.startTag(null, "root");
*//**serializer.startTag(null, "Child1");
serializer.endTag(null, "Child1");
serializer.startTag(null, "Child2");
serializer.attribute(null, "attribute", "value");
serializer.endTag(null, "Child2");*//*
serializer.startTag(null, "EmailId");
serializer.text(txtemailid.getText().toString());
serializer.endTag(null,"EmailId");
serializer.startTag(null, "PhoneNo");
serializer.text(txtphoneno.getText().toString());
serializer.endTag(null,"PhoneNo");
serializer.endTag(null,"root");
serializer.endDocument();
//write xml data into the FileOutputStream
serializer.flush();
//finally we close the file stream
fileos.close();
Toast.makeText(getApplication(), "xml created",Toast.LENGTH_LONG);
} catch (Exception e) {
Log.e("Exception","error occurred while creating xml file");
}
是的,有一种方法。你可以使用FileOutputStream编写Xmlfile。并使用XMLserializer设置属性和标签。看看我给出了一个例子。