读写xml笔记
来源:互联网 发布:linux服务启动脚本 编辑:程序博客网 时间:2024/06/11 17:43
读写xml
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.util.Iterator;
import java.util.List;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Element;
import org.dom4j.Node;
import org.dom4j.io.OutputFormat;
import org.dom4j.io.SAXReader;
import org.dom4j.io.XMLWriter;
public class TestReadXml {
public static String getClassPath() {
return XmlParser.class.getClass().getResource("/").toString();
}
public static void ff() {
File f2 = new File(XmlParser.class.getResource("").getPath());
System. out.println(f2);
}
public static void main(String[] args) {
try {
SAXReader reader = new SAXReader();
String xmlPath = System. getProperty("user.dir") + "\\src\\test\\java\\test.xml" ;
File file = new File(xmlPath);
if (file.exists()) {
Document document = reader.read(file);
Element root = document.getRootElement();
// 根据节点名获取节点
System. out.println(root.element("login" ).getTextTrim());
// 遍历节点
for (Iterator i = root.elementIterator(); i.hasNext();) {
Element element = (Element) i.next();
System. out.println(element.asXML());
}
// 根据xpath 根据节点名,节点属性查找指定的节点
System. out.println("----------------------获取指定节点的值----------------------------------" );
List<Node> node1 = root.selectNodes("//p[@id='hehe']");
for (Node n : node1) {
System. out.println(n.getName());
System. out.println(n.getText());
}
System. out.println("----------------------精确查找----------------------------------" );
// 精确查找
List<Node> node2 = root.selectNodes("//div/p[@id='hi']");
for (Node n : node2) {
System. out.println(n.getName());
System. out.println(n.getText());
}
// hh 为xml节点名
Element hh = root.element( "hh");
System. out.println("---------------------获取父节点的名字-----------------------" );
// 获取父节点
System. out.println(hh.getParent().getName());
// 设置节点的值
hh.setText( "21");
System. out.println(hh.getText());
// 写入文件
OutputFormat format = OutputFormat.createPrettyPrint();
format.setEncoding( "utf-8");
XMLWriter writer = new XMLWriter(new FileWriter(xmlPath), format);
writer.write(document);
writer.close();
/*
* //获取子节点 System.out.println(hh.getNodeType());
* System.out.println(hh.getData());
* System.out.println(hh.getName());
* System.out.println(hh.getText());
* System.out.println(hh.getTextTrim()); hh.setText("21");
* System.out.println(hh.getTextTrim());
*/
}
} catch (DocumentException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
//参考网址:http://berdy.iteye.com/blog/807883
//
0 0
- 读写xml笔记
- JAVA学习笔记 -- 读写XML
- 【学习笔记】JAVA读写XML
- XML学习笔记(三)--Delphi读写XML
- XML学习笔记(四)--Delphi读写xml
- OpenCV笔记(一)-XML文件读写
- 基于boost简单读写xml文件笔记
- 安卓学习笔记--读写xml文件
- 笔记:使用CMarkup读写xml文件
- opencv学习笔记之xml文件读写
- XML学习笔记(五)--Delphi读写xml例子
- 读写XML
- 读写XML
- 读写XML
- 读写XML
- 读写XML
- xml读写
- XML读写
- MySQL slave状态之Seconds_Behind_Master
- 自学java 变量的定义
- 安卓巴士总结了近百个Android优秀开源项
- Eclipse和PyDev搭建完美Python开发环境(Windows篇)
- [leetcode] Plus One
- 读写xml笔记
- 在虚拟机下面安装samba后,就可以将文件夹映射到Windows下
- SAT阅读考试的特点及应对策略
- 工业4.0大背景下的自动套料软件
- java服务器IAP验证
- 对几个通用的Java hashCode重写方案的一些思考和探讨
- 进入登陆界面
- mib - 管理信息库
- 读写excel