Chris Mao的专栏

思想比知识更重要,成长比成功更重要

用户操作
[即时聊天] [发私信] [加为好友]
毛子兵ID:chris_mao
15227次访问,排名8093,好友15人,关注者35人。
具有多年的软件研发工作经验
chris_mao的文章
原创 58 篇
翻译 0 篇
转载 6 篇
评论 16 篇
毛子兵的公告
  • 2000年编写第一套商业软件
  • 2001年获得中级程序员认证
  • 2002年从事HIS系统开发
  • 2004年从事ERP软件研发
  • 2005年从事Protel增值开发
  • 2007年从事企业内部门户及网络应用开发
最近评论
zgjzkj:了解了
mghueh:wow power leveling
lee576:if update(fieldname) ......

就可以了,这样就不怕字段顺序改变
hFamily:很棒的文章,不知道可以不可以发到 CodeIgniter 中国开发者社区里呢?
lxy218:恩,是的
同意楼主观点

思想嘛,每个人的理解都是不一样的
所以达到重用易于维护就可以了
文章分类
收藏
    相册
    自然之美
    存档
    软件项目交易
    订阅我的博客
    XML聚合  FeedSky
    订阅到鲜果
    订阅到Google
    订阅到抓虾
    订阅到BlogLines
    订阅到Yahoo
    订阅到GouGou
    订阅到飞鸽
    订阅到Rojo
    订阅到newsgator
    订阅到netvibes

    原创 Java加载XML文件收藏

    新一篇: XML与XSLT(续) | 旧一篇: XML与XSLT

            一个单独的XML文件不能做任何的工作,它需要与应用程序结合起来实现各种功能,应用程序通过XML解析器和XML应用程序接口处理XML文件。我们现在就讨论一下如何使用Java加载XML文件并访问其中的元素。

            为了简化编写处理XML的应用程序,W3C已制订出多种编程接口,其中包含的DOM和SAX(Simple API for XML)较为典型。在Java应用程序中要需要使用JAXP(Java API for XML)创建DOM或是SAX解析器来访问XML文件。

            JAXP使得用Java开发处理XML数据的应用程序非常容易,JAXP包括语法分析器、标准SAX与DOM,可么选择以事件流或是建立对象表示来解析数据。JAXP1.1版本还支持XSLT标准,可以控制数据表表示,并可以将数据转换成其他的XML文件或格式,如HTML。

            JAXP提供的类和方法,可以让Java应用程序使用DOM解析或转换XML文件。在JDK 1.4支持的JAXP API 1.1版支持XML。

    说明

    Javax.xml.parsers 提供处理XML文件的类
    Javax.xml.transform 提供处理XSLT文件的类
    org.xml.sax 这是SAX解析器,提供以事件驱动方式解析XML文件的API
    org.xml.saxheplers 提供解析错误处理的相关类,可以帮助程序设计者使用SAX API
    org.w3c.dom 提供支持DOM建议规格的包



     

     

     

     

     

             在Java中想要加载XML文件,首先要引入与XML相关的类包

    import javax.xml.parsers.*;
    import org.xml.sax.*;
    import org.w3c.dom.*;
    import java.io.*;

            在JAXP中DOM解析器称为DocumentBuilder,可以通过工厂类DocumentBuilderFactory获得,而document对象则可以通过类DocumentBuild获得,使用try catch指令建立解析错误处理。在建立 DocumentBuild对象后,可以使用其Parser方法解析加载XML文件,file对象加载后就可以处理XML文件的结点内容,程序块的架构如下

    DocumentBuilderFactor dbf = DocumentBuilderFactory.newInstance();
    try {
      DocumentBuilder db 
    = dbf.newDocumentBuilder();
      document 
    = db.parser(new File(args[0]));
      .....
    }

    catch(SAXException se) {
      
    //解析过程错误
      Exception e = se;
      
    if (se.getException() != null{
        e 
    = se.getException();
        e.printStackTrack();
      }

    }

    catch(ParserConfigurationException pe) {
      
    //解析器设置错误
      pe.printStackTrace();
    }

    catch(IOException ie) {
      
    //文件处理错误
      ie.printStackTrace();
    }
            获得document实例后,就可以对DOM的文档树进行访问了,如果要遍历DOM文档,首先要获得根结点,然后获得根结点的子结点列表。
    //获取根结点
    Element element = document.getDocumentElement();
    //获取根结点的子结点列表
    NodeList = element.getChildNodes();
           

    发表于 @ 2007年10月16日 22:36:00|评论(loading...)|编辑

    新一篇: XML与XSLT(续) | 旧一篇: XML与XSLT

    评论:没有评论。

    发表评论  


    登录
    Csdn Blog version 3.1a
    Copyright © 毛子兵