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

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

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

test.xml

java

Eclipse

Swift

Xcode

C#

Visual Studio

后台:

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;

@Override

protected 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

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");

//

// java

// Eclipse

//

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);

//

// Swift

// Xcode

//

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();

}

}

}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/506832.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

android 获取wifi的加密类型,wifi加密类型

最近开发wifi方面的功能,需要根据wifi加密类型来展现UI。遇到了一个比较蛋疼的问题:如何判断wifi加密类型wifi的管理需要通过WifiManager来操作WifiManager mWifiManager (WifiManager) context.getSystemService(Context.WIFI_SERVICE);开启和关闭wifi…

android编译的tool版本有多少,macOS Mojave(10.14.2)系统上编译LunarG/VulkanTools工程的Android版本...

$ cd ~$ git clone https://github.com/LunarG/VulkanTools.git$ cd VulkanTools$ cd build-android$ export ANDROID_SDK_HOME~/Library/Android/sdk$ export ANDROID_NDK_HOME~/Library/Android/sdk/ndk-bundle# 当前的版本需要Android SDK 23.0.0,但是需要Java 11以下版本的…

android底部导航栏软件,三步搞定android应用底部导航栏

很多android应用底部都有一个底部导航栏,方便用户在使用过程中随意切换。目前常用的做法有三种:一种是使用自定义tabHost,一种是使用activityGroup,一种是结合FrameLayout实现。笔者再做了多款应用后,为了节约开发周期&#xff0c…

html列表滑动字母索引,js实现做通讯录的索引滑动显示效果和滑动显示锚点效果...

只做实现。。完全没考虑性能优化。所以我实现了以后特别卡。第一个是在通讯录右边的索引条上进行滑动,滑动到相应字母就跳转到相应字母的锚点上。思路:监听touchmove事件,获取clientX和clientY,传入到elementFromPoint&#xff0c…

html一行中怎么写空格,html – 用一行填写空格

如何创建一个下划线,填充文本行末尾和DIV宽度结束之间的空白区域.我正在尝试以下方法:我希望当屏幕变小时,产品线会中断.我希望价格保持在右边,并加下划线.最后一个单词(Mayo)和价格之间的空格必须自动填充下划线.大屏幕:老奶酪 – 沙拉,牛油果,鸡蛋,草药…

android 屏幕飘动,Android自定义View实现飘动的叶子效果(三)

上一篇对自定义View及一些方法有所了解,下面做一个简单的叶子飘动的例子主要技术点1、添加背景图片canvas.drawBitmap()2、Matrix动画类3、Matrix添加到画布上步骤1、添加黄色背景颜色public LeafView(Context context, AttributeSet attrs) {super(context, attrs)…

html加入购物车的动画,vue实现加入购物车动画

预备基础整体思路定义商品列表,设置点击的元素(点击后触发加入购物车的函数addToShopCart)注:这里要把$event传递过去,方便得到target定义一个component用来放购物车和运动的小球定义一个component用来放运动的小球,里面包含多个b…

html 美化input file,Input[type=”file”] 显示效果美化方法 | 智慧宫

Html中input可以作为上传图片代码如下但是演示非常不好看,下面做一番美化处理,效果如下:文件上传美化前后对比美化方法隐藏 input 标签使用 label 标签在input标签位置显示;用js获取 input 中上传的文件名称,并在 labl…

html 进入效果,用css3实现简单的进入效果

这是一个比较简单的小例子,实现如图效果仅仅用css3就可以达到这种效果,代码如下:.div {position: relative;top: 20px;height: 300px;width: 200px;margin: 0 auto;background: blue;float: left;margin-left: 20px;}.div2 {position: relati…

计算机专业中agp是什么意思,计算机中AGP是什么意思及其特性介绍

AGP (Accelerated Graphic Ports 或者 Advanced Graphic Ports) 是当前已经被淘汰的图形系统接口。这项技术始于十四年以前,当时的3D图形加速技术开始流行并且迅速普及,为了使系统和图形加速卡之间的数据传输获得比PCI总线更高的带宽,AGP便应…

统计应用计算机基础,计算机基础应用试题及答案参考

计算机基础应用试题及答案参考计算机技术与通信技术的结合,使计算机网络得到发展。信息服务业的兴起使社会信息资源得到更广泛的利用。下面是小编为大家搜索整理的计算机应用基础训练题,希望能给大家带来帮助!1、计算机病毒是(B)。A.计算机系统自生的B.一…

计算机目标导学方法,计算机教学计划

计算机教学计划信息技术课程是一门特殊比较的学科,操作性较强,大部分学生对此相当感兴趣。 以下是为大家整理的计算机教学计划,希望对你们有所帮助!篇一:计算机教学计划本学期我任教11级护理班的计算机应用基础课程教学…

java 网络编程connection timed out是什么意思_什么?听说这四个概念,很多 Java 老手都说不清...

Java 是很多人一直在用的编程语言,但是有些 Java 概念是非常难以理解的,哪怕是一些多年的老手,对某些 Java 概念也存在一些混淆和困惑。所以,在这篇文章里,会介绍四个 Java 中最难理解的四个概念,去帮助开发…

计算机相近专业有哪些,计算机相关的专业有哪些

计算机、会计及相关专业计算机及相关专业04015700 教育信息技术04034200 现代信息技术教育05034300 出版与电脑编辑技术05049300 互联网广告设计05047900 电脑艺术设计07010200 信息与计算科学07014100 计算数学及其应用软件07014200 信息科学07120100 电子信息科学与技术07120…

assembly 输出ab中所有数_.NET Core中批量注入Grpc服务

(给DotNet加星标,提升.Net技能)转自:张子浩cnblogs.com/ZaraNet/p/12167517.htmlGRPC 是谷歌发布的一个开源、高性能、通用RPC服务,尽管大部分 RPC 框架都使用 TCP 协议,但其实 UDP 也可以,而 gRPC 干脆就用了 HTTP2。…

福建高职计算机知识点,2013福建高职单招 计算机类专业 知识试题

2013福建高职单招 计算机类专业 知识试题计算机类专业基础知识试题第Ⅰ卷一、单项选择题(在每小题的四个备选答案中,选出一个正确答案,并将正确的字母标号填涂在答题卡相应在位置上,每小题3分,共120分)1、 世界上第一台计算机(ENI…

kdj指标主要看哪个值_悟空CRM:在线crm主要看这两个指标,都非常重要!

crm对很多企业都非常重要,可是很多人并不明白crm到底重要在哪些地方?比如说很多人都比较喜欢使用这个系统,尤其是在线crm。 在线crm主要看这两个指标,都非常重要,这两个指标如果上去了,基本上对企业的运营都…

在html中 正确的嵌套方式是( ).,HTML及网页制作练习题-完整版

1、在HTML中,()标记不可出现在和标记符之间。(C)(A)(B)(C)(D)2、(A)单元格所跨的列数(B)行的宽度(C)列的高度(D)单元格所跨的行数3、在HTML中,正确的嵌套方式是(B)。(A)(B)(&#xf…

鼠标控制视角wasd移动_绝地求生:为什么控制方向键是WASD?网友:就不能是其他键位吗?...

哈喽,大家好这里是大能有话说,现在的网络游戏越来越发达,每个游戏的玩法有非常多种,但是不知道小伙伴们有没有发现,在需要控制方向的情况下,咱们用的都是W、A、S、D这四个键,那为什么偏偏就一定…

19秋学期计算机网络基础在线作业,南开19秋学期(1709、1803、1809、1903、1909)《计算机网络基础》在线作业资料答案3...

19秋学期(1709、1803、1809、1903、1909)《计算机网络基础》在线作业-0003试卷总分:100 得分:100一、单选题 (共 15 道试题,共 30 分)1.物理层的主要任务描述为确定与传输媒体的接口的一些特性,()指明对于不同功能的各种可能事件的出现顺序。[A.]过程特性[B.]电气特…