JavaWeb学习笔记——XML解析

DOM解析操作




只在跟节点<addresslist>下面建立一个子节点<name>
<?xml version="1.0" encoding="UTF-8"?>
<addresslist>
<linkman>
<name>张三</name>
<email>www.baidu.com</email>
</linkman> <linkman>
<name>李四</name>
<email>www.sina.com</email>
</linkman>
</addresslist>
import java.io.IOException; import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory; import org.w3c.dom.Document;
import org.w3c.dom.NodeList;
import org.xml.sax.SAXException; //=================================================
// File Name : DOM_demo
//------------------------------------------------------------------------------
// Author : Common //类名:BinarySearch_Find
//属性:
//方法: //主类
//Function : DOM_demo
public class DOM_demo { public static void main(String[] args) throws Exception{
// TODO 自动生成的方法存根
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); //建立DocumentBuilderFactory
DocumentBuilder builder = factory.newDocumentBuilder(); //建立DocumentBuilder
Document doc = null;
try{
doc = builder.parse("/home/common/software/coding/HelloWord/JavaWeb/bin/dom_name.xml");
}catch(SAXException e){
e.printStackTrace();
}catch(IOException e){
e.printStackTrace();
}
NodeList nl = doc.getElementsByTagName("name"); //查找name节点
System.out.println("姓名:"+nl.item(1).getFirstChild().getNodeValue()); //输出第1个节点的内容
} }
一些DOM操作,循环输出节点信息
import java.io.IOException; import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory; import org.w3c.dom.Element;
import org.w3c.dom.Document;
import org.w3c.dom.NodeList;
import org.xml.sax.SAXException; //=================================================
// File Name : DOM_demo
//------------------------------------------------------------------------------
// Author : Common //类名:BinarySearch_Find
//属性:
//方法: //主类
//Function : DOM_demo
public class DOM_demo { public static void main(String[] args) throws Exception{
// TODO 自动生成的方法存根
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); //建立DocumentBuilderFactory
DocumentBuilder builder = factory.newDocumentBuilder(); //建立DocumentBuilder
Document doc = null;
try{
doc = builder.parse("/home/common/software/coding/HelloWord/JavaWeb/bin/dom_name.xml");
}catch(SAXException e){
e.printStackTrace();
}catch(IOException e){
e.printStackTrace();
} // NodeList nl = doc.getElementsByTagName("name"); //查找name节点
// System.out.println("姓名:"+nl.item(1).getFirstChild().getNodeValue()); //输出第1个节点的内容 NodeList lm = doc.getElementsByTagName("linkman"); //查找linkman节点
for(int i=0;i<lm.getLength();i++){
Element e = (Element)lm.item(i); //取得每一个元素
System.out.println("姓名:"+e.getElementsByTagName("name").item(0).getFirstChild().getNodeValue());
System.out.println("邮箱:"+e.getElementsByTagName("email").item(0).getFirstChild().getNodeValue());
}
} }
生成XML文件

import java.io.File;
import java.io.IOException; import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.transform.OutputKeys;
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; import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.xml.sax.SAXException; //=================================================
// File Name : DOM_demo
//------------------------------------------------------------------------------
// Author : Common //类名:BinarySearch_Find
//属性:
//方法: //主类
//Function : DOM_demo
public class DOM_demo { public static void main(String[] args) throws Exception{
// TODO 自动生成的方法存根
//建立DocumentBuilderFactory
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
//建立DocumentBuilder
DocumentBuilder builder = factory.newDocumentBuilder();
//定义Document接口对象,通过DocumentBuilder类进行DOM树的转换操作
Document doc = null;
doc = builder.newDocument(); //建立各个操作节点
Element addresslist = doc.createElement("addresslist");
Element linkman = doc.createElement("linkman");
Element name = doc.createElement("name");
Element email = doc.createElement("email");
//设置节点的文本内容,即为每一个节点添加文本节点
name.appendChild(doc.createTextNode("王五"));
email.appendChild(doc.createTextNode("www.soho.com"));
//设置节点关系
linkman.appendChild(name); //子节点
linkman.appendChild(email); //子节点
addresslist.appendChild(linkman); //子节点
doc.appendChild(addresslist); //文档上保存节点
//输出文档到文件中
TransformerFactory tf = TransformerFactory.newInstance();
Transformer t = null;
try{
t = tf.newTransformer();
}catch(TransformerConfigurationException e1){
e1.printStackTrace();
}
t.setOutputProperty(OutputKeys.ENCODING, "UTF-8"); //设置编码
DOMSource source = new DOMSource(doc); //输出文档
StreamResult result = new StreamResult(new File("/home/common/software/coding/HelloWord/JavaWeb/bin/dom_name_output.xml")) ;
try{
t.transform(source, result); //输出
}catch(TransformerException e){
e.printStackTrace();
}
} }
JavaWeb学习笔记——XML解析的更多相关文章
- JavaWeb学习笔记——SAX解析
import org.xml.sax.Attributes; import org.xml.sax.SAXException; import org.xml.sax.helpers.DefaultHa ...
- JavaWeb学习笔记——XML和SAX解析区别
- JavaWeb学习笔记——XML简介
- JavaWeb学习笔记总结 目录篇
JavaWeb学习笔记一: XML解析 JavaWeb学习笔记二 Http协议和Tomcat服务器 JavaWeb学习笔记三 Servlet JavaWeb学习笔记四 request&resp ...
- javaweb学习笔记整理补课
javaweb学习笔记整理补课 * JavaWeb: * 使用Java语言开发基于互联网的项目 * 软件架构: 1. C/S: Client/Server 客户端/服务器端 * 在用户本地有一个客户端 ...
- html学习笔记-XML
html学习笔记-XML Table of Contents 1. XML简介 2. XML用途 3. XML树结构 4. XML语法 5. XML元素 6. XML属性 7. XML验证 8. XM ...
- JavaWeb学习——web.xml文件说明
JavaWeb学习——web.xml文件说明 摘要:本文主要学习了web.xml文件的作用以及如果配置. 是什么 web.xml文件是用来在JavaWeb项目里面初始化配置信息的,比如:访问的首页.S ...
- Javaweb学习笔记——(六)——————xml中jaxp两种解析方式和dom4j运用
1.xml的scheam约束 dtd的语法:<!ElEMENT 元素名称 约束> **schema符合xml的语法,xml语句 **一个xml中可以有多个schema,多个schema使用 ...
- 【Javaweb学习笔记】XML和约束模式
一.XML语法 xml 可扩展标记语言,w3c组织发布的,用于保存有关系的数据,作为配置文件,描述程序模块之间的关系 xml 文件开头必须包括下面的标签: <?xml version=" ...
随机推荐
- tomcat 的安全规范
下面来说一下,日常工作当中我们需要注意的一些tomcat的安全规范: 一:telnet管理端口的保护 类别 配置内容及其说明 标准配置 备注 Telnet 管理端口的保护 (强制) (1)配置文件中的 ...
- 将Extjs文件拷入eclipse工程下卡死问题
主要是由于eclipse默认对js文件进行校验,ExtJS中js文件多且庞大造成电脑资源耗尽. 解决方法: 找到工作空间中项目文件夹下的.project文件,将 <buildCommand> ...
- IntelliJ_13_配置tomcat
一.下载tomcat7并解压 http://tomcat.apache.org/download-70.cgi http://apache.fayea.com/tomcat/tomcat-7/v7.0 ...
- 【POJ 1151】Atlantis
离散化后扫描线扫一遍. 夏令营时gty学长就讲过扫描线,可惜当时too naive,知道现在才写出模板题. 当时也不会线段树啊233 #include<cstdio> #include&l ...
- 折腾笔记之wordpress安装出现错误---【wordpress点击文章找不到网页的解决办法】
本来写的好好的在后台,然后发表在前台,能够看见在网站首页,但是一点击进去,就提示找不到链接了.郁闷,经过查找资料.终于解决了 1,.htaccess要开放写权限,这样在自定义wp的永久链接时,wp会自 ...
- 字符串String: 常量池
2.1 String类 String是不可变类, 即一旦一个String对象被创建, 包含在这个对象中的字符序列是不可改变的, 直至该对象被销毁. String类是final类,不能 ...
- 【HDU 4940】Destroy Transportation system(无源无汇带上下界可行流)
Description Tom is a commander, his task is destroying his enemy’s transportation system. Let’s repr ...
- html5标签figure、figcaption
figure.figcaption,这俩个标签都是定义图文的 常常用到一种图片列表,图片+标题或者图片+标题+简单描述.以前的常规写法: <li> <img src="te ...
- Android高工必备技能
转载:http://www.jianshu.com/p/d791bbede02c Step 1. 玩转RxJava 使用RxJava处理异步极其方便,各种操作符可以对数据做流水线式操作,再加上与Ret ...
- [Noi2016十连测第三场]线段树
#include <iostream> #include <cstdio> #include <cstring> #include <algorithm> ...