废话不多说了直接上代码:

新建一个Xml文件用于读取:

test.xml

<Languages cat="1"><lan id="1"><name>java</name><ide>Eclipse</ide></lan><lan id="2"><name>Swift</name><ide>Xcode</ide></lan><lan id="3"><name>C#</name><ide>Visual Studio</ide></lan>
</Languages>

后台:

import android.support.v7.app.ActionBarActivity;
import android.os.Bundle;
import android.util.Log;
import android.widget.TextView;import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.NodeList;
import org.xml.sax.SAXException;import java.io.IOException;
import java.io.StringWriter;import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;
import javax.xml.transform.Transformer;
import javax.xml.transform.TransformerConfigurationException;
import javax.xml.transform.TransformerException;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.stream.StreamResult;public class MainActivity extends ActionBarActivity {private TextView tv1;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);tv1= (TextView) findViewById(R.id.tv1);try {//读取与解析Xml文件:DocumentBuilderFactory builderFactory=DocumentBuilderFactory.newInstance();DocumentBuilder builder=builderFactory.newDocumentBuilder();Document document=builder.parse(getAssets().open("test.xml")); //记住导的是import org.w3c.dom.Document;不要导错Element element=document.getDocumentElement();NodeList  list=element.getElementsByTagName("lan");//过滤读取lan所对应的内容for (int i=0;i<list.getLength();i++){Element lan= (Element) list.item(i);tv1.append(lan.getAttribute("id")+"\n");tv1.append(lan.getElementsByTagName("name").item(0).getTextContent()+"\n");tv1.append(lan.getElementsByTagName("ide").item(0).getTextContent()+"\n");}DocumentBuilderFactory builderFactory1=DocumentBuilderFactory.newInstance();DocumentBuilder builder1=builderFactory1.newDocumentBuilder();Document newxml=builder1.newDocument();Element languages=newxml.createElement("Languages");//根元素languages.setAttribute("cat","it");  //设置属性//生成与输出XMl数据Element lan1=newxml.createElement("lan");//                <lan id="1">
//                <name>java</name>
//                <ide>Eclipse</ide>
//                </lan>lan1.setAttribute("id","1");Element name1=newxml.createElement("name");name1.setTextContent("java");Element ide1=newxml.createElement("ide");ide1.setTextContent("Eclipse");lan1.appendChild(name1);lan1.appendChild(ide1);languages.appendChild(lan1);//                <lan id="2">
//                <name>Swift</name>
//                <ide>Xcode</ide>
//                </lan>Element lan2=newxml.createElement("lan");lan2.setAttribute("id", "1");Element name2=newxml.createElement("name");name2.setTextContent("Swift");Element ide2=newxml.createElement("ide");ide2.setTextContent("Xcode");lan2.appendChild(name2);lan2.appendChild(ide2);languages.appendChild(lan2);newxml.appendChild(languages);TransformerFactory transformerFactory=TransformerFactory.newInstance();Transformer transformer=transformerFactory.newTransformer();transformer.setOutputProperty("encoding", "utf-8");StringWriter sw=new StringWriter();transformer.transform(new DOMSource(newxml),new StreamResult(sw));sw.toString();//输出查看结果sw.close();tv1.append("\n输出结果:"+sw.toString());} catch (IOException e) {e.printStackTrace();Log.i("e1",e.toString());} catch (ParserConfigurationException e) {e.printStackTrace();Log.i("e2", e.toString());} catch (SAXException e) {e.printStackTrace();Log.i("e3", e.toString());} catch (TransformerConfigurationException e) {e.printStackTrace();} catch (TransformerException e) {e.printStackTrace();}}
}

android中XMl文件的读取相关推荐

  1. android的读取xml配置文件,android中XMl文件的读取

    废话不多说了直接上代码: 新建一个Xml文件用于读取: test.xml java Eclipse Swift Xcode C# Visual Studio 后台: import android.su ...

  2. android中xml文件的生成与读取(Pull)

    1.android中是采用Xml文件序列化器生成Xml文件的, //1得到一个xml文件的序列化器(生成器) XmlSerializer serializer=Xml.newSerializer(); ...

  3. android 表格xml,【Android】利用表格布局,Android中xml文件与java的交互制作登录界面...

    登录界面是图形编程.网页编程的一个经典而又基础的程序. 在安卓中,如图所示一个基本登录界面: 点击取消按钮就关闭这个程序,点击登录按钮则显示用户输入的用户名与密码. 一.基本布局 这个程序利用到安卓中 ...

  4. C/C++程序读写Android中xml文件

    Created: September 2, 2021 作者: 秋水君 前言 怎么编写能在Android系统中运行的C/C++可执行程序,一般有一下两种方法: 1. 通过谷歌提供的JNI机制 2. 交叉 ...

  5. android 中xml文件的各种样式的学习

    http://keeganlee.me/post/android/20150916 代码规范演示: <!-- 方法一 --> <?xml version="1.0" ...

  6. Android中XML数据解析

    转载请注明出处:http://blog.csdn.net/yegongheng/article/details/38296207 XML初步 今天我们来学习另一种非常重要的数据交换格式-XML.XML ...

  7. Android中XML的三种解析器分析、实战

    XML解析器介绍 Android中提供了三种方式来解析XML: SAX(simple API for XML) DOM(文档对象模型) 以及Android内部使用的Pull解析. SAX(simple ...

  8. OpenCV中XML文件和YAML文件的读写

    OpenCV中XML文件和YAML文件的读写 代码如下: #include <opencv2/core/core.hpp> #include <iostream> #inclu ...

  9. android修改xml变量值,Android中XML的基本操作(增、删、改、查)

    Android中XML的一些操作 解析类: // 构造方法 public XMLParser() { } /** * 从URL获取XML使HTTP请求 * * @param url * string ...

最新文章

  1. [skill] vim 操作多个window
  2. Cache系列:spring-cache简单三步快速应用ehcache3.x-jcache缓存(spring4.x)
  3. 移动硬盘上划分linux分区,Linux下磁盘分区和移动硬盘的挂载方法有哪些?
  4. java不使用除号实现除法运算_LeetCode29 Medium 不用除号实现快速除法
  5. python跨目录调用_python 跨目录访问文件
  6. 计算机英语讲课笔记04
  7. eclipse生成ant build.xml打war包
  8. android机顶盒root,[Android]机顶盒root脚本:SupersuSU获取完美Root权限万能方法,解决二进制更新问题 | 樱花庄...
  9. 空气负氧离子监测系统建设方案
  10. Stm32F4XX开启FPU浮点运算
  11. 微信文章排版技巧和相关排版工具
  12. Qt编写安防视频监控系统25-离线地图
  13. 分布式事务详解【分布式事务的几种解决方案】彻底搞懂分布式事务
  14. 无屏幕有线情况下笔记本电脑连接树莓派
  15. crawler_浅谈网络爬虫
  16. word2007表格计算机,电脑员好做吗?使用word2007表格?
  17. 关于flask入门教程-ajax+echarts实现大屏展示
  18. linux bash d,bashd的基本特性及文本操作命令
  19. Oracle 存储过程 字符串拼接 SQL注入的问题
  20. 百度 codetop

热门文章

  1. Nat Rev Genet发表房刚组细菌表观组综述论文
  2. QIIME 2用户文档. 8数据导入Importing data(2018.11)
  3. 修改串口设备名ttymxc1_Modbus通讯之串口联网设备
  4. 算法在ros中应用_烟火检测算法——中伟视界人工智能算法AI在智慧工地、石油中的应用_腾讯新闻...
  5. R语言ggplot2可视化:使用ggplot2绘制按时间顺序排列的时间线图(chronological timeline plot)
  6. pandas对dataframe的数据列进行随机抽样(Random Sample of Columns):使用sample函数进行数据列随机抽样(有放回的随机抽样,replacement)
  7. tensorflow.python.framework.errors_impl.InvalidArgumentError: 2 root error(s) found.
  8. TCGAbiolinks包下载TCGA数据
  9. Ratatosk - Hybrid error correction of long reads enables accurate variant calling and assembly
  10. 数字图像处理4:图像的像素级运算