pull创建xml文件是很简单,
/设置生成xml编码格式 serializer.startDocument("UTF-8", false); //设置xml 命名空间和根元素,任何元素都用这种方式创建 serializer.startTag(null, "classes"); //设置group的属性,设置元素的属性 serializer.attribute(null, "name", "一年级"); //创建xml元素的值 serializer.text("语文80"); //创建xml元素结束 serializer.endTag(null, "person");
以上方法的第一个参数都是xml的命名空间。
以下是生成简单xml的代码:
private void pullCreateXml(){ try { OutputStream outStream = openFileOutput("sax.xml", Context.MODE_PRIVATE); XmlSerializer serializer = Xml.newSerializer(); //输出流的编码格式 serializer.setOutput(outStream, "UTF-8"); //设置xml文件的编码格式, /*第二个参数trues生成 tandalone='yes' * false 则生成tandalone='no' * 值 no 表示这个 XML 文档不是独立的而是依赖于外部所定义的一个 DTD. * 值 yes 表示这个 XML 文档是自包含的(self-contained). */ serializer.startDocument("UTF-8", false); //设置xml 命名空间和根元素 serializer.startTag(null, "classes"); serializer.startTag(null, "group"); //设置group的属性 serializer.attribute(null, "name", "一年级"); serializer.attribute(null, "num", "10"); serializer.startTag(null, "person"); serializer.attribute(null, "name", "小明"); serializer.attribute(null, "age", "7"); serializer.startTag(null, "chinese"); serializer.text("语文80"); serializer.endTag(null, "chinese"); serializer.startTag(null, "english"); serializer.text("英语80"); serializer.endTag(null, "english"); serializer.endTag(null, "person"); serializer.endTag(null, "group"); serializer.endTag(null, "classes"); //数据写入到xml文件中 serializer.flush(); //关闭流 outStream.close(); } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IllegalArgumentException e) { e.printStackTrace(); } catch (IllegalStateException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } }
生成xml是没有格式化的,也就是没有换行,制表符等格式化的以下辅助符号
<?xml version='1.0' encoding='UTF-8' standalone='no' ?><classes><group name="一年级" num="10"> <person name="小明" age="7"><chinese>语文80</chinese><english>英语80</english></person></group></classes>
以上就是 android pull 创建xml文件的内容,更多相关内容请关注PHP中文网(www.php.cn)!