android dom 解析xml方式文章中,简单介绍了dom解析xml的应用。今天在原文章的基础上,说一下android中dom创建xml的应用。

首先:创建的文件会放在/data/data/cn.com.xxx(当前包名)/files下面。

创建生成的xml文件如下所示:

<?xml version="1.0" encoding="utf-8"?><classes><group name="一年级" num="10"><person name="小明" age="7"><chinese>语文90</chinese><english>英语80</english></person></group></classes>
可以直接用 android dom 解析xml方式文章中方法去解析,注意修改一点:

// 从assets文件夹下获取文件 转换成输入流//inStream = this.getResources().getAssets().open(fileName);//doc = docBuilder.parse(inStream);InputStream fosStream = openFileInput(fileName);doc = docBuilder.parse(fosStream);
同时,fileName取得方法:

String[] fileNames = getFilesDir().list();
String fileName = fileNames[0];
解析出来的结果是

android dom方式创建xml_第1张图片
以下是创建xml文件的代码:

private void createXmlFile(){try {DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();DocumentBuilder builder = factory.newDocumentBuilder();Document doc  = builder.newDocument();//创建xml根元素Element rootEle = doc.createElement("classes");doc.appendChild(rootEle);//创建xml二级元素Element groupEle = doc.createElement("group");groupEle.setAttribute("name", "一年级");groupEle.setAttribute("num", "10");//创建xml person元素Element personEle = doc.createElement("person");//personEle 的属性和属性值personEle.setAttribute("name", "小明");personEle.setAttribute("age", "7");//创建personELe的子元素Element chinese = doc.createElement("chinese");//创建personELe的子元素的值chinese.appendChild(doc.createTextNode("语文90"));personEle.appendChild(chinese);Element english = doc.createElement("english");english.appendChild(doc.createTextNode("英语80"));personEle.appendChild(english);groupEle.appendChild(personEle);rootEle.appendChild(groupEle);TransformerFactory tf = TransformerFactory.newInstance();Transformer transformer = tf.newTransformer();DOMSource source = new DOMSource(doc);transformer.setOutputProperty(OutputKeys.ENCODING, "utf-8");transformer.setOutputProperty(OutputKeys.INDENT, "no");//创建文件存放在 /data/data/cn.xxx.xxx(当前包)/files FileOutputStream fos = openFileOutput("Dom.xml", Context.MODE_PRIVATE);//创建文件存放在 /data/data/cn.xxx.xxx(当前包)/cache//FileOutputStream fos = OpPrintWriter pw = new PrintWriter(fos);StreamResult result = new StreamResult(pw);transformer.transform(source, result);System.out.println("生成XML文件成功!");} catch (ParserConfigurationException e) {System.out.println(e.getMessage());} catch (TransformerConfigurationException e) {System.out.println(e.getMessage());} catch (TransformerException e) {System.out.println(e.getMessage());} catch (FileNotFoundException e) {System.out.println(e.getMessage());}}




更多相关文章

  1. Android 下载的三种实现方式(文件流的读写方式下载,用DownloadMan
  2. Android 自定义View及其在布局文件中的使用示例
  3. 实现了 Android 设备之间通过 Wifi 传输文件的功能
  4. Dex2jar 与 JD-GUI快速反编译Android apk文件
  5. Android UI设计的基本元素有哪些
  6. Android在SD卡上的文件读写
  7. 2013.12.23 ——— android assents文件路径
  8. Android 制定的ROM包(文件系统根目录结构分析)
  9. Android中xml文件读写

随机推荐

  1. Android环境变量作用--命令行操作(ADB、AV
  2. 百度Android在线语音识别SDK使用方法
  3. Android Studio 没有assets目录的问题
  4. Android HIDL 简介
  5. 解决Android启动显示空白界面的问题
  6. UI设计
  7. Android Studio 无法引用org.apache.http
  8. android-pickerview-master的导入
  9. OpenGL ES教程IV之着色(原文对照)
  10. Android 加载.gif格式图片