代码语言
.
CSharp
.
JS
Java
Asp.Net
C
MSSQL
PHP
Css
PLSQL
Python
Shell
EBS
ASP
Perl
ObjC
VB.Net
VBS
MYSQL
GO
Delphi
AS
DB2
Domino
Rails
ActionScript
Scala
代码分类
文件
系统
字符串
数据库
网络相关
图形/GUI
多媒体
算法
游戏
Jquery
Extjs
Android
HTML5
菜单
网页交互
WinForm
控件
企业应用
安全与加密
脚本/批处理
开放平台
其它
【
Java
】
XML的增删改查
作者:
qddxpj
/ 发布于
2014/11/7
/
403
package XMLcrud; import java.io.FileOutputStream; import java.io.InputStream; import java.util.ArrayList; import java.util.List; import org.dom4j.Document; import org.dom4j.Element; import org.dom4j.io.OutputFormat; import org.dom4j.io.SAXReader; import org.dom4j.io.XMLWriter; public class XMLUtil { private static String fileURL="/user.xml"; /** * 获取XML中所有的用户信息 * @return */ public static List<User> getAllUser(){ Document document=getDocument(); Element rootElement=document.getRootElement(); List<Element> userElements=rootElement.elements(); List<User> users=new ArrayList<User>(); for (Element userElement : userElements) { User user=new User(); user.setId(userElement.attributeValue("id")); user.setName(userElement.element("name").getTextTrim()); user.setAge(userElement.element("age").getTextTrim()); users.add(user); } return users; } /** * 向XML文件中添加一个user * @param user */ public static void add(User user){ Document document=getDocument(); Element rootElement=document.getRootElement(); Element userElement=rootElement.addElement("user"); userElement.addAttribute("id",getMaxId()+1+""); Element nameElement=userElement.addElement("name"); Element ageElement=userElement.addElement("age"); nameElement.setText(user.getName()); ageElement.setText(user.getAge()); write2XML(document); } /** * 根据id删除user * @param id */ public static void deleteById(String id){ Document document=getDocument(); Element rootElement=document.getRootElement(); List<Element> userElements=rootElement.elements("user"); for (Element userElement : userElements) { if(userElement.attributeValue("id").equals(id)){ System.out.println("开始删除....."); rootElement.remove(userElement); System.out.println("删除结束....."); } } write2XML(document); } /** * 修改user信息 * @param user */ public static void update(User user){ Document document=getDocument(); Element rootElement=document.getRootElement(); List<Element> userElements=rootElement.elements(); for (Element userElement : userElements) { if(userElement.attributeValue("id").equals(user.getId())){ List<Element> elements=userElement.elements(); userElement.element("name").setText(user.getName()); userElement.element("age").setText(user.getAge()); } } write2XML(document); } /** * 获取根节点 * @return rootElement */ public static Document getDocument(){ try { SAXReader saxReader=new SAXReader(); InputStream in=OperateXML.class.getResourceAsStream("/user.xml"); Document document=saxReader.read(in); return document; } catch (Exception e) { e.printStackTrace(); throw new RuntimeException(e); } } /** * 把内容写到XML文件中 * @param document */ public static void write2XML(Document document){ try { OutputFormat format=new OutputFormat(" ", true, "utf-8"); format.setTrimText(true); XMLWriter writer = new XMLWriter(format); writer.setOutputStream(new FileOutputStream("src"+fileURL)); writer.write(document); writer.close(); } catch (Exception e) { e.printStackTrace(); throw new RuntimeException(e); } } /** * 获取xml文件中userId的最大值 * @return int */ public static int getMaxId(){ int maxId=0; Document document=getDocument(); Element rootElement=document.getRootElement(); List<Element> userElements=rootElement.elements(); for (Element element : userElements) { int id=Integer.valueOf(element.attributeValue("id")); if(maxId<id){ maxId=id; } } return maxId; } } package XMLcrud; public class User { private String id; private String name; private String age; public String getId() { return id; } public void setId(String id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getAge() { return age; } public void setAge(String age) { this.age = age; } @Override public String toString() { return "User [id=" + id + ", name=" + name + ", age=" + age + "]"; } } <?xml version="1.0" encoding="utf-8"?> <users> <user id="1"> <name>张三</name> <age>18</age> </user> <user id="2"> <name>李四</name> <age>10</age> </user> </users>
试试其它关键字
XML
XML增删改
同语言下
.
List 切割成几份 工具类
.
一行一行读取txt的内容
.
Java PDF转换成图片并输出给前台展示
.
java 多线程框架
.
double类型如果小数点后为零则显示整数否则保留两位小
.
将图片转换为Base64字符串公共类抽取
.
sqlParser 处理SQL(增删改查) 替换schema 用于多租户
.
JAVA 月份中的第几周处理 1-7属于第一周 依次类推 29-
.
java计算两个经纬度之间的距离
.
输入时间参数计算年龄
可能有用的
.
C#实现的html内容截取
.
List 切割成几份 工具类
.
SQL查询 多列合并成一行用逗号隔开
.
一行一行读取txt的内容
.
C#动态修改文件夹名称(FSO实现,不移动文件)
.
c# 移动文件或文件夹
.
c#图片添加水印
.
Java PDF转换成图片并输出给前台展示
.
网站后台修改图片尺寸代码
.
处理大图片在缩略图时的展示
qddxpj
贡献的其它代码
(
1
)
.
XML的增删改查
Copyright © 2004 - 2024 dezai.cn. All Rights Reserved
站长博客
粤ICP备13059550号-3