使用dom4j实现读取和写入xml文件
来源:互联网 发布:单片机电子时钟原理图 编辑:程序博客网 时间:2024/05/29 13:14
在使用dom4j时,需要导入dong4j的jar包以及依赖包。
分别为:dom4j-1.6.1.jar与jaxen-1.1.6.jar
以下为相关代码
需要创建User类javabean对象
对象含有属性password与username
package cn.yellowimg.dao; import java.io.FileOutputStream; import java.io.OutputStreamWriter; import org.dom4j.Document; import org.dom4j.DocumentException; import org.dom4j.Element; import org.dom4j.io.OutputFormat; import org.dom4j.io.SAXReader; import org.dom4j.io.XMLWriter; import cn.yellowimg.domain.User;public class UserDao {private String pathString="D:/users.xml";//依赖数据文件/* * * 按用户名查找 */public User findByUsername(String username){ /* * 得到Document * xpath查询 * 效验查询结果是否null 如果为null 返回null * 如果不会null,则把Element封装到User对象中 */ //创建解析器 SAXReader reader=new SAXReader(); try { Document doc=reader.read(pathString); /* * 通过xpath查询得到element * 根节点为user * 加入对应的username存在 * 则将xml文档中username与password属性写到User对象中 */ Element element=(Element)doc.selectSingleNode("//user[@username='"+username+"']"); if(element==null) return null; User user=new User(); user.setUsername(element.attributeValue("username")); user.setPassword(element.attributeValue("password")); return user; } catch (DocumentException e) { throw new RuntimeException(e); }}/* * * 添加用户 */public void add(User user){ /* * 得到Document * 通过Document获得root元素 * 使用user,转换成Element对象 * 把element添加到root元素中 * 保存到Document中 */ SAXReader reader=new SAXReader(); try { Document document=reader.read(pathString); //得到根元素 Element root=document.getRootElement(); //通过根元素创建新元素 Element userElement=root.addElement("user"); //为userElement设置属性 userElement.addAttribute("username", user.getUsername()); userElement.addAttribute("password", user.getPassword()); /* * 保存文档 */ //缩进使用/t 使用换行 格式化器 OutputFormat outputFormat=new OutputFormat("\t",true); //清空原有换行缩进 outputFormat.setTrimText(true); //创建XmlWriter XMLWriter xmlWriter; try { xmlWriter=new XMLWriter( new OutputStreamWriter(new FileOutputStream(pathString) ,"utf-8"), outputFormat); xmlWriter.write(document); xmlWriter.close(); } catch(Exception e) { throw new RuntimeException(e); } } catch (DocumentException e) { throw new RuntimeException(e); }}}
对应的xml文档格式为
<users> <user username="" password=""/></users>
阅读全文
0 0
- 使用dom4j实现读取和写入xml文件
- Dom4J对XML文件的读取和写入
- 使用dom4j和jdom读取xml文件
- 使用 JDOM 读取和写入 XML 文件
- dom4j解析xml和写入xml文件
- 使用dom4j读取xml文件
- 使用DOM4j读取xml文件
- 使用Dom4j读取xml文件
- 使用dom4j 读取XML文件
- 使用DOM4J读取XML文件
- DOM4J 写入 XML 文件
- jxl读取Excel文件,dom4j写入xml文件例子
- XML文件写入和读取
- [Source Code]使用Dom和dom4j读取XML文件
- 使用dom4j对xml文件进行读取和输出操作
- dom4j读取 写入 修改 xml
- dom4j读取写入修改 xml
- XML文件的写入和读取(解析)基于DOM4J工具
- 敏捷开发 —— TDD(测试驱动开发)
- linux debian配置静态IP,网关,DNS详细步骤
- js 创建对象的方式
- mybatis进阶(8)--查询缓存之二级缓存
- 数据结构——栈(C++实现)
- 使用dom4j实现读取和写入xml文件
- let关键字
- 在移动端输入框在软键盘弹出后位置矫正
- bzoj4199[luoguP2178]品酒大会[noi2015] (后缀数组+并查集)
- SNMP实践
- 没有Bug的二分法
- linux debian8.2版本安装详细步骤(无图)
- ZooKeeper学习第五期--ZooKeeper管理分布式环境中的数据
- bzoj 1009: [HNOI2008]GT考试(dp+kmp+矩阵快速幂)