Dom4j初步使用

来源:互联网 发布:美团数据分析专员 编辑:程序博客网 时间:2024/06/05 09:58

一、解析XML文件
//读取用户名和密码
      public static List<String> getUserInfo(String filePath,String usertypethrows DocumentException{
           List<String> user = new ArrayList<String>();
           String username = null;
           String password = null;
           SAXReader reader = new SAXReader();
        Document document = reader.read( filePath);
        Element root = document.getRootElement();
//        System.out.println(root.getName()); //打印根节点名称
//        //获取某节点的属性
//        String freeuser = root.element("user").attributeValue("type");
//        System.out.println( freeuser);
       
        List<Element> childElements = root .elements( "user" );
        for(Element elementchildElements){
            if( element.attributeValue( "type").equals( usertype)){
                 username = element.element( "username").getText();
                 password = element.element( "password").getText();
                 user.add(0, username);
                 user.add(1, password);
                 //System.out.println(username );
           } else if (element.attributeValue( "type").equals( usertype)){
                 username = element.element( "username").getText();
                 password = element.element( "password").getText();
                 user.add(0, username);
                 user.add(1, password);
           }
        }
        return  user;
     }


二、Dom4j生成XMl文件
  1.  public class Dom4jBuildXml {  
        public void build(){  
           try {  
               //DocumentHelper提供了创建Document对象的方法  
                 Document document = DocumentHelper.createDocument();  
               //添加节点信息  
                Element rootElement = document.addElement("users");  
               //这里可以继续添加子节点,也可以指定内容  
              rootElement.setText("这个是module标签的文本信息");  
               Element element = rootElement.addElement("user");  
                 
               Element nameElement = element.addElement("name");  
                Element valueElement = element.addElement("password");  
              Element descriptionElement = element.addElement("description");  
               nameElement.setText("名称");  
                nameElement.addAttribute("language", "java");//为节点添加属性值  
               valueElement.setText("值");  
                valueElement.addAttribute("language", "c#");  
               descriptionElement.setText("描述");  
                descriptionElement.addAttribute("language", "sql server");  
                System.out.println(document.asXML()); //将document文档对象直接转换成字符串输出  
               Writer fileWriter = new FileWriter("c:\\user.xml");  
                //dom4j提供了专门写入文件的对象XMLWriter  
                XMLWriter xmlWriter = new XMLWriter(fileWriter);  
                xmlWriter.write(document);  
               xmlWriter.flush();  
                xmlWriter.close();  
                System.out.println("xml文档添加成功!");  
             } catch (IOException e) {  
                e.printStackTrace();  
           }  
       }

0 0
原创粉丝点击