免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 723 | 回复: 0
打印 上一主题 下一主题

dom解析xml文件 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-08-07 10:45 |只看该作者 |倒序浏览
(从工程中读取xml文件和在工程中创建一个xml文件的demo)
首先在包aa下建一个名为em.xml的文件,内容为

   
   tian ping
   111111
  6.01.06.00


接着在aa下建一个Dom4jTest类,注意要导入以下的包
package aa;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import org.apache.log4j.Logger;
import org.dom4j.Attribute;
import org.dom4j.DocumentException;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;

public class Dom4jTest {
   private static final Logger logger = Logger.getLogger(Dom4jTest.class);
  
    public static void main(String[] args) throws IOException,
       DocumentException {
     
         BufferedReader reader=new BufferedReader(new FileReader("src/aa/em.xml"));
         String tempStr;
         String ewXml="";
         while((tempStr=reader.readLine())!=null) {
             ewXml=ewXml+tempStr;
             logger.debug(tempStr);
             System.out.println("tempStr++++++++  "+tempStr);
         }
        Element root = null;
         root = DocumentHelper.parseText(ewXml).getRootElement();
         Attribute rootCmd=root.attribute("cmd");
         Attribute rootVersion=root.attribute("version");
         logger.debug("rootNmae = "+root.getName());
         logger.debug("EW'cmd = "+rootCmd.getValue());
         logger.debug("EW'version = "+rootVersion.getValue());
//         System.out.println("aaaaaaaaaaaaa           "+root.getName());
//         System.out.println("aaaaaaaaaaaaa           "+rootCmd.getValue());
//         System.out.println("aaaaaaaaaaaaa           "+rootVersion.getValue());
         Element usrName=root.element("Username");
         logger.debug("EW.Username value = "+usrName.getTextTrim());
         Element source=root.element("Source");
         Attribute sourceUns=source.attribute("uns");
         logger.debug("EW.Source'uns="+sourceUns.getValue());
         Attribute sourceType=source.attribute("type");
         logger.debug("EW.Source'type = "+sourceType.getValue());
        //创建一个Xml文件
        Element user=DocumentHelper.createElement("User");
        user.addAttribute("type", "user");
        user.addElement("name").addAttribute("type", "PinYin").setText("Julysea");
        user.addElement("age").setText("29");
        String oneXml=user.asXML();
        
        BufferedWriter out=new BufferedWriter(new FileWriter("src/aa/oneXml.xml"));
         out.write(oneXml);
         out.close();
     }
}
接下来要建一个log4j.properties文件,方便log4j的输出,内容如下:
# Set root logger level to DEBUG and its only appender to A1.
log4j.rootLogger=debug, stdout, R
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
# Pattern to output the caller's file name and line number.
log4j.appender.stdout.layout.ConversionPattern=%d %-5p [%C{1}]: %x %m %n
log4j.appender.R=org.apache.log4j.RollingFileAppender
log4j.appender.R.File=rich-client.log
log4j.appender.R.MaxFileSize=1000KB
# Keep one backup file
log4j.appender.R.MaxBackupIndex=100
log4j.appender.R.layout=org.apache.log4j.PatternLayout
log4j.appender.R.layout.ConversionPattern=%d %-5p [%C{1}]: %x %m %n

源码下载

文件:
xml生成javabean.rar
大小:
13KB
下载:
下载

                                                    2006年8月7日jean


本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/20665/showart_151820.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP