菜鸟如何学习 XML (java)

1.读取XML

2.写入XML

3.新建XML

4.创建构造XML

创建新的xml文档:

 1 /构造一个XML解析器 并且创建新的文档/
 2 1     Document document = null;
 3 2         DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
 4 3         try {
 5 4             DocumentBuilder builder = factory.newDocumentBuilder();
 6 5             document = builder.newDocument();//创建一个新的XML文件
 7 6             //document = builder.parse(fileName);//解析已存在的XML文件
 8 7         } catch (ParserConfigurationException e) {
 9 8             e.printStackTrace();
10 9         }

将内存中的xml输出到文件上面:

 1 //将内存中的xml,输出到文件上面
 2         Transformer tf = null;
 3         TransformerFactory tff = TransformerFactory.newInstance();
 4         try {
 5             tf = tff.newTransformer();
 6             tf.transform(new DOMSource(document), new StreamResult("src/test.xml"));
 7
 8         } catch (TransformerConfigurationException e) {
 9             e.printStackTrace();
10         } catch (TransformerException e) {
11             e.printStackTrace();
12         }

构建xml:

 1         Element root = document.createElement("root");//创建根目录
 2
 3         Element student = document.createElement("student");
 4
 5         student.setAttribute("name", "xiaoming");//设置student 的属性值
 6
 7         /*创建student的子元素*/
 8         Element id = document.createElement("id");
 9         Element sex = document.createElement("sex");
10         Element age = document.createElement("age");
11
12         /*设置元素的文本*/
13         id.setTextContent("0001");
14         sex.setTextContent("man");
15         age.setTextContent("18");
16
17         /*将子元素添加到父元素(student)中*/
18         student.appendChild(id);
19         student.appendChild(sex);
20         student.appendChild(age);
21
22         root.appendChild(student);//将元素(节点)student 添加到根目录(root)中去
23         document.appendChild(root);//将根目录添加到文档中去

输出结果:

1 <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2 <root>
3     <student name="xiaoming">
4         <id>0001</id>
5         <sex>man</sex>
6         <age>18</age>
7     </student>
8 </root>

获取XML中的数据

 1 <?xml version="1.0" encoding="UTF-8" standalone="no"?><root>
 2     <student name="xiaoming">
 3         <id>0001</id>
 4         <sex>man</sex>
 5         <age>18</age>
 6     </student>
 7     <student name="xiaozhu">
 8         <id>0002</id>
 9         <sex>man</sex>
10         <age>20</age>
11     </student>
12     <student name="xiaohong">
13         <id>0003</id>
14         <sex>female</sex>
15         <age>15</age>
16     </student>
17 </root>

对XML进行查找操作

 1 //获取student中属性name=xiaoming的所有信息
 2         NodeList list_st =document.getElementsByTagName("student");
 3         /*遍历所有student的元素*/
 4         for(int i=0;i<list_st.getLength();i++)
 5         {
 6             Node n =list_st.item(i);
 7
 8             Element student= (Element)n;//必须强转为元素才能获取到设置的属性,节点获取不了属性
 9
10             /*找出student中属性xiaoming的节点*/
11             if(student.getAttribute("name").equals("xiaoming"))
12             {
13                 /*获取所有标签中的文本信息*/
14                 String id = student.getElementsByTagName("id").item(0).getTextContent();
15                 String sex = student.getElementsByTagName("sex").item(0).getTextContent();
16                 String age = student.getElementsByTagName("age").item(0).getTextContent();
17
18                 System.out.println("id:"+id);
19                 System.out.println("sex:"+sex);
20                 System.out.println("age:"+age);
21                 /*输出:
22                  * id:0001
23                  * sex:man
24                  * age:18
25                  */
26             }
27         }
时间: 2024-10-14 12:15:57

菜鸟如何学习 XML (java)的相关文章

Android学习xml解析大全之SAX和DOM

  随着android的学习解析xml成为了很多朋友面临的问.想学习如何解析xml就要先了解xml是什么. XML称为可扩展标记语言(Extensible Markup Language),由标准通用标记语言(SGML:Standard Generalized Markup Language)发展而来,允许开发者自定义标签,可以实现标签和内容的有效分离. 与HTML不同,XML不再侧重于数据如何表现,而是更多的关注数据如何存储和传输.因此,XML逐渐演变成为一种跨平台的数据交换格式.通过使用XM

Android菜鸟如何学习Android系统开发?

如何做好Android学习前的准备? 如果你已经确定了学习Android的目标,那么,应该提前做好哪些工作.先打下哪些基础呢? 首先,你最好先熟悉一门编程语言,现在大学里面和计算机相关的专业甚至理工类专业一般都会开设C语言课程,只是很多同学在大学期间并没有好好学习,如果对它掌握的不太好或者很久没用了,建议先从将其好好复习一下,将其基本的语法再好好回顾一下,最好能搭建一个环境来运行.调试它.如果没有学过,不妨也提前学习一下,可以参考清华大学出版社出版的谭浩强老师的<C语言程序设计>,推荐这本书的

Java基础学习总结——Java对象的序列化和反序列化

一.序列化和反序列化的概念 把对象转换为字节序列的过程称为对象的序列化. 把字节序列恢复为对象的过程称为对象的反序列化. 对象的序列化主要有两种用途: 1) 把对象的字节序列永久地保存到硬盘上,通常存放在一个文件中: 2) 在网络上传送对象的字节序列. 在很多应用中,需要对某些对象进行序列化,让它们离开内存空间,入住物理硬盘,以便长期保存.比如最常见的是Web服务器中的Session对象,当有 10万用户并发访问,就有可能出现10万个Session对象,内存可能吃不消,于是Web容器就会把一些s

很值得学习的java 画图板源码

很值得学习的java 画图板源码下载地址:http://download.csdn.net/source/2371150 package minidrawpad; import java.awt.*; import java.awt.event.*; import java.io.InputStreamReader; import java.io.Reader; import javax.swing.*; // 主界面类 public class DrawPad extends JFrame i

activity_main.xml: java.lang.NullPointerException

1.错误描述 eclipse.buildId=4.4.0.I20140606-1215 java.version=1.7.0_67 java.vendor=Oracle Corporation BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=zh_CN Framework arguments: -product org.eclipse.epp.package.jee.product Command-line arguments:

Java闭关修炼64课 很适合新手学习的JAVA视频教程

Java闭关修炼64课 很适合新手学习的JAVA视频教程 java闭关修炼第一课 什么是java(1).rar  java闭关修炼第一课 什么是java.rar  java闭关修炼第七课 基础语言要素(1).rar  java闭关修炼第七课 基础语言要素.rar  java闭关修炼第三十一课 静态方法(1).rar  java闭关修炼第三十一课 静态方法.rar  java闭关修炼第三十七课 成员初始化顺序讨论(1).rar  java闭关修炼第三十七课 成员初始化顺序讨论.rar  java闭

转载:java基础学习总结——java读取properties文件总结

java基础学习总结--java读取properties文件总结 一.java读取properties文件总结 在java项目中,操作properties文件是经常要做的,因为很多的配置信息都会写在properties文件中,这里主要是总结使用getResourceAsStream方法和InputStream流去读取properties文件,使用getResourceAsStream方法去读取properties文件时需要特别注意properties文件路径的写法,测试项目如下: 1.1.项目的

java基础学习总结——java环境变量配置(转)

java基础学习总结——java环境变量配置 前言 学习java的第一步就要搭建java的学习环境,首先是要安装 JDK,JDK安装好之后,还需要在电脑上配置"JAVA_HOME”."path”."classpath"这三个环境变量才能够把java的开发环境 搭建好.在没安装过jdk的环境下,path环境变量是系统变量,本来存在的,而JAVA_HOME和classpath是不存在的. 一.配置JAVA_HOME变量 操作步骤(win7系统):计算机→右键“属性”→高

排列的学习(java)

1.无重复排列 2.有重复排列 3,下一个排列 package 生成排列; public class Main { static int count=0; //a中保存原来的排列,lev表示选定第几个数,len是长度 public static void swap(int a[],int lev,int i) { int temp=a[lev]; a[lev]=a[i]; a[i]=temp; } public static void swap(char a[],int lev,int i) {