Java 如何读取/写入xml文件?
我已经创建了一个xml文件,其中包含标记和标记值Java 如何读取/写入xml文件?,java,android,xml,Java,Android,Xml,我已经创建了一个xml文件,其中包含标记和标记值 <?xml version="1.0" encoding="utf-16"?> <Scoreboard> <Score> <username>Ryan</username> <points>200</points> </Score> 目前,我的xml文件存储在一个资产文件夹中,但当我尝试写入时,我收到一个错误,说它是只读的。我怎样才
<?xml version="1.0" encoding="utf-16"?>
<Scoreboard>
<Score>
<username>Ryan</username>
<points>200</points>
</Score>
目前,我的xml文件存储在一个资产文件夹中,但当我尝试写入时,我收到一个错误,说它是只读的。我怎样才能避开这个问题呢
任何帮助都将不胜感激,我花了整个下午的时间试图找到这个问题的解决方案,但几乎什么都没有想到,谢谢。有一个编写xml文件的课程:
serializer = Xml.newSerializer();
writer = new StringWriter();
try {
serializer.setOutput(writer);
serializer.startDocument("UTF-8", true);
serializer.setPrefix(prefix, namespace);
serializer.startTag(prefix, tagName);
serializer.attribute(prefix, attrName, value);
serializer.endTag(prefix, tagName);
serializer.endDocument();
return writer.toString();
} catch (IOException e) {
throw new RuntimeException(e);
}
XmlPullParserFactory xmlPullParserFactory = XmlPullParserFactory.newInstance();
xmlPullParserFactory.setNamespaceAware(true);
XmlPullParser xmlPullParser = xmlPullParserFactory.newPullParser();
xmlPullParser.setInput(new StringReader(xml));
return xmlPullParser;
甚至对于读取xml文件:
serializer = Xml.newSerializer();
writer = new StringWriter();
try {
serializer.setOutput(writer);
serializer.startDocument("UTF-8", true);
serializer.setPrefix(prefix, namespace);
serializer.startTag(prefix, tagName);
serializer.attribute(prefix, attrName, value);
serializer.endTag(prefix, tagName);
serializer.endDocument();
return writer.toString();
} catch (IOException e) {
throw new RuntimeException(e);
}
XmlPullParserFactory xmlPullParserFactory = XmlPullParserFactory.newInstance();
xmlPullParserFactory.setNamespaceAware(true);
XmlPullParser xmlPullParser = xmlPullParserFactory.newPullParser();
xmlPullParser.setInput(new StringReader(xml));
return xmlPullParser;
“资源”文件夹是只读的。您需要将文件移动到SDCard@cricket_007谢谢你的回复。我会试试这个,看看效果如何@cricket_007如果用户没有sd卡,我可以在哪里保存文件。是否有任何方法可以将其保存在应用程序中,同时使其可读写?所有设备都有SD卡。它不需要是“可移动”的哦,糟糕,我把它当作一个sd卡,可以物理插入。好的,你有什么地方可以推荐给我学习怎么做吗?虽然听起来很悲伤,但我花了很多时间试图找到答案。如果我不想创建一个全新的文件,如何在不创建新文件的情况下写入已存在的文件?我计划在用户下载应用程序时,文件中已经有5分。@RW6您可以使用解析器读取已存在的文件,然后创建一个简单的函数,将解析器内容加载到序列化程序中,在序列化程序中添加所需内容,然后覆盖文件