Jdom对mxl文档基础操作(读取,修改,添加,删除)

1 篇文章 0 订阅

public class JdomTest {

    public static void main(String[] args) throws Exception {
        // TODO Auto-generated method stub
        //create();
        //readXml();
        //updataXml();
        //addXml();
    }

     public static void create(){
        // 1 创建文档
            Document docu = new Document();
            //创建 根目录
            Element root = new Element("root");
            
            //创建子元素
            Element student = new Element("student");
            //子对象元素
            Element uId= new Element("uId");
            Element uSex= new Element("uSex");
            Element uName= new Element("uName");
            Element uAge= new Element("uAge");
            Element uAddress= new Element("uAddress");
            Element uPhone= new Element("uPhone");
            
            //设置 层级关系
            root.addContent(student);
            
            student.addContent(uId);
            student.addContent(uSex);
            student.addContent(uName);
            student.addContent(uAge);
            student.addContent(uAddress);
            student.addContent(uPhone);
            
            //设置值
            student.setAttribute("sNo", "NO10028585566");
            uId.setText("1001");
            uSex.setText("女");
            uName.setText("刘亦菲");
            uAge.setText("35");
            uAddress.setText("北京");
            uPhone.setText("1356898441");
            
            //存入入 document对象
            docu.addContent(root);
            //设置格式
            Format format = Format.getPrettyFormat();
            
            format.setEncoding("utf-8");
            format.setIndent(" ");
            //........
            
            
            //将docu写入 xml文档
            XMLOutputter xo = new XMLOutputter(format);
            //响应文件
            try {
                xo.output(docu, new FileOutputStream(new File("D://sutInfo.xml")));
                System.out.println("操作成功!!");
            } catch (Exception e) {
                e.printStackTrace();
                System.out.println("操作失败!!");
            }
            //响应给 请求
        }

//读取解析xml文件

      public static void readXml() throws Exception{
          SAXBuilder sb = new SAXBuilder();
          Document docu = sb.build(new FileInputStream(new File("D://sutInfo.xml")));
          Element root=docu.getRootElement(); //获取根元素HD
          List<Element> stu =root.getChildren("student");//取名字为disk的所有元素
          for (Element element : stu) {
            
        
            String uId = element.getChild("uId").getText();
            String uSex = element.getChild("uSex").getText();
            String uName = element.getChild("uName").getText();
            String uAge = element.getChild("uAge").getText();
            String uAddress = element.getChild("uAddress").getText();
            String uPhone = element.getChild("uPhone").getText();
             System.out.println("读取解析xml===>"+uId+"---"+uSex+"---"+uName+"---"+uAge+"---"+uAddress+"---"+uPhone);
        }
         
      }
      

//修改xml文件对象


      public static void updataXml() throws Exception{
          SAXBuilder sb = new SAXBuilder();
          Document docu = sb.build(new FileInputStream(new File("D://sutInfo.xml")));
          Element root=docu.getRootElement(); //获取根元素HD
          List<Element> stu =root.getChildren("student");//取名字为disk的所有元素
          for (Element element : stu) {
            
            String uId = element.getChild("uId").getText();
            if(uId.equals("1001")){
                element.getChild("uName").setText("花粥");
                 element.removeAttribute("sNo");
                 
                 String uSex = element.getChild("uSex").getText();
                    String uName = element.getChild("uName").getText();
                    String uAge = element.getChild("uAge").getText();
                    String uAddress = element.getChild("uAddress").getText();
                    String uPhone = element.getChild("uPhone").getText();
                     System.out.println("修改后===>"+uId+"---"+uSex+"---"+uName+"---"+uAge+"---"+uAddress+"---"+uPhone);
            }
            
        }
          Format format = Format.getPrettyFormat();
            
            format.setEncoding("utf-8");
            format.setIndent(" ");

            //将docu写入 xml文档
            XMLOutputter xo = new XMLOutputter(format);
            //响应文件
            try {
                xo.output(docu, new FileOutputStream(new File("D://sutInfo.xml")));
                System.out.println("修改成功!!");
            } catch (Exception e) {
                e.printStackTrace();
                System.out.println("修改失败!!");
            }
          
      }
      
//添加xml文件对象      


      public static void addXml() throws Exception{
          SAXBuilder sb = new SAXBuilder();
          Document docu = sb.build(new FileInputStream(new File("D://sutInfo.xml")));
          Element root=docu.getRootElement(); //获取根元素HD
          Element student=new Element("student");
          
            Element uId= new Element("uId");
            Element uSex= new Element("uSex");
            Element uName= new Element("uName");
            Element uAge= new Element("uAge");
            Element uAddress= new Element("uAddress");
            Element uPhone= new Element("uPhone");
            
            //设置 层级关系
            root.addContent(student);
            
            student.addContent(uId);
            student.addContent(uSex);
            student.addContent(uName);
            student.addContent(uAge);
            student.addContent(uAddress);
            student.addContent(uPhone);
            
            //设置值
            
            uId.setText("1002");
            uSex.setText("男");
            uName.setText("李星云");
            uAge.setText("21");
            uAddress.setText("北京");
            uPhone.setText("1356898441");
        
            //设置格式
            Format format = Format.getPrettyFormat();
            
            format.setEncoding("utf-8");
            format.setIndent(" ");

            //将docu写入 xml文档
            XMLOutputter xo = new XMLOutputter(format);
            //响应文件
            try {
                xo.output(docu, new FileOutputStream(new File("D://sutInfo.xml")));
                System.out.println("添加成功!!");
            } catch (Exception e) {
                e.printStackTrace();
                System.out.println("添加失败!!");
            }
          
 
        }
         
      }

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值