【发布时间】:2011-09-28 10:46:37
【问题描述】:
我可以在 Eclipse 中打开一个 android 项目的本地文件夹中的 xml 文件来读取值:
Resources res = activity.getResources();
XmlResourceParser xpp = res.getXml(R.xml.tittes);
但是我怎样才能打开一个本地的 xml 文件来编辑文件并在之后保存呢?
感谢您的回复!.,
我的意思是本地文件,我需要读取和编辑用于数据存储目的的 XML 文件。我决定将文件放在 asset 文件夹 中,我可以轻松打开它以供阅读::
*DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder docBuilder = factory.newDocumentBuilder();
InputStream iS = this.getAssets().open("myFile.xml");
Document doc = docBuilder.parse(iS);*
...,,但经过多次尝试,我没有获得保存文件以进行编辑的方式:我最后一次尝试是:
*TransformerFactory transfac = TransformerFactory.newInstance();
Transformer trans = transfac.newTransformer();
//create string from xml tree
StringWriter sw = new StringWriter();
StreamResult result = new StreamResult(sw);
DOMSource source = new DOMSource(doc);
trans.transform(source, result);
String xmlString = sw.toString();
OutputStream f0;
byte buf[] = xmlString.getBytes();
**f0 = new FileOutputStream("/assets/wines.xml");**
//f0 = new FileOutputStream("file:///assets/wines.xml");
for(int i=0;i<buf .length;i++) {
f0.write(buf[i]);
}
f0.close();
buf = null;*
失败的结果是File not found!!!,。我来自 C# 项目,我无法想象保存修改后的文件如此困难,.,
有什么想法吗?!¿!?再次感谢!!
【问题讨论】: