CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Java >  J2EE / EJB / JMS

请问怎么用JSP读取XML文件的内容

楼主lifun(apple)2005-04-04 20:49:46 在 Java / J2EE / EJB / JMS 提问

刚学,请给个例子,具体点的,谢谢谢谢。 问题点数:0、回复次数:7Top

1 楼tx18(www.sqlserver.com.cn)回复于 2005-04-04 20:57:47 得分 0

import   java.io.File;  
  import   java.io.OutputStreamWriter;  
  import   java.io.PrintWriter;  
  import   java.io.UnsupportedEncodingException;  
   
  import   org.w3c.dom.Attr;  
  import   org.w3c.dom.Document;  
  import   org.w3c.dom.NamedNodeMap;  
  import   org.w3c.dom.Node;  
  import   org.w3c.dom.NodeList;  
  import   javax.xml.parsers.*;  
  //import   com.ibm.xml.parsers.*;  
   
  /**  
    *   A   sample   DOM   writer.   This   sample   program   illustrates   how   to  
    *   traverse   a   DOM   tree.  
    */  
   
  public   class   domOne  
  {  
      public   void   parseAndPrint(String   uri)  
      {  
          Document   doc   =   null;  
   
          try  
          {  
      DocumentBuilderFactory   dbf   =   DocumentBuilderFactory.newInstance();  
      DocumentBuilder   db   =   dbf.newDocumentBuilder();  
      doc   =   db.parse(new   File(uri));  
          }  
          catch   (Exception   e)  
          {  
              System.err.println("Sorry,   an   error   occurred:   "   +   e);  
          }  
   
          //   We've   parsed   the   document   now,   so   let's   print   it.      
   
          if   (doc   !=   null)  
              printDOMTree(doc);  
      }  
   
      /**   Prints   the   specified   node,   recursively.   */  
      public   void   printDOMTree(Node   node)    
      {  
          int   type   =   node.getNodeType();  
          switch   (type)  
          {  
              //   print   the   document   element  
              case   Node.DOCUMENT_NODE:    
                  {  
                      System.out.println("<?xml   version=\"1.0\"   ?>");  
                      printDOMTree(((Document)node).getDocumentElement());  
                      break;  
                  }  
   
                  //   print   element   with   attributes  
              case   Node.ELEMENT_NODE:    
                  {  
                      System.out.print("<");  
                      System.out.print(node.getNodeName());  
                      NamedNodeMap   attrs   =   node.getAttributes();  
                      for   (int   i   =   0;   i   <   attrs.getLength();   i++)  
                      {  
                          Node   attr   =   attrs.item(i);  
                          System.out.print("   "   +   attr.getNodeName()   +    
                                                            "=\""   +   attr.getNodeValue()   +    
                                                            "\"");  
                      }  
                      System.out.print(">");  
   
                      NodeList   children   =   node.getChildNodes();  
                      if   (children   !=   null)  
                      {  
                          int   len   =   children.getLength();  
                          for   (int   i   =   0;   i   <   len;   i++)  
                              printDOMTree(children.item(i));  
                      }  
   
                      break;  
                  }  
   
                  //   handle   entity   reference   nodes  
              case   Node.ENTITY_REFERENCE_NODE:    
                  {  
                      System.out.print("&");  
                      System.out.print(node.getNodeName());  
                      System.out.print(";");  
                      break;  
                  }  
   
                  //   print   cdata   sections  
              case   Node.CDATA_SECTION_NODE:    
                  {  
                      System.out.print("&lt;![CDATA[");  
                      System.out.print(node.getNodeValue());  
                      System.out.print("]]&gt;");  
                      break;  
                  }  
   
                  //   print   text  
              case   Node.TEXT_NODE:    
                  {  
                      System.out.print(node.getNodeValue());  
                      break;  
                  }  
   
                  //   print   processing   instruction  
              case   Node.PROCESSING_INSTRUCTION_NODE:    
                  {  
                      System.out.print("<?");  
                      System.out.print(node.getNodeName());  
                      String   data   =   node.getNodeValue();  
                      {  
                          System.out.print("   ");  
                          System.out.print(data);  
                      }  
                      System.out.print("?>");  
                      break;  
                  }  
          }  
   
          if   (type   ==   Node.ELEMENT_NODE)  
          {  
              System.out.print("</");  
              System.out.print(node.getNodeName());  
              System.out.print('>');  
          }  
      }   //   printDOMTree(Node)  
   
      /**   Main   program   entry   point.   */  
      public   static   void   main(String   argv[])    
      {  
          if   (argv.length   ==   0)  
          {  
              System.out.println("Usage:     java   domOne   uri");  
              System.out.println("       where   uri   is   the   URI   of   the   XML   document   you   want   to   print.");  
              System.out.println("       Sample:     java   domOne   sonnet.xml");  
              System.exit(1);  
          }  
   
          domOne   d1   =   new   domOne();  
          d1.parseAndPrint(argv[0]);  
      }  
  }  
   
  Top

2 楼bestdelphier(菜鸟升级中......)回复于 2005-04-05 01:11:39 得分 0

建议用jdom,实现起来比价容易,而且功能也不弱。Top

3 楼joincsdn(云)回复于 2005-04-05 08:08:23 得分 0

如果XML文件不是太大建议用jdom!!  
   
  很容易上手Top

4 楼cutelion(MADEinCNNC)回复于 2005-04-05 08:40:54 得分 0

UPTop

5 楼Goal3(拼命三郎)回复于 2005-04-05 08:45:10 得分 0

jaxp   JAVA自带的API接口Top

6 楼OnlyFor_love(『勾勾手指头 一辈子不分手』)回复于 2005-04-05 09:10:11 得分 0

用jdom!Top

7 楼syliang2003(祝天下有情人终成扣肉)回复于 2005-04-05 09:12:59 得分 0

同上,JDOMTop

相关问题

  • 有没有办法在JSP中读取XML文件的内容?
  • 如何读取XML文件??
  • 读取xml文件到表!~
  • 如何读取xml文件??
  • 用DOM4J读取XML文件
  • 读取xml文件问题
  • .cs中读取XML文件
  • jsp读取xml文件时出错!!!哪个高手帮忙解决一下!!!
  • 关于JSP中文件读取(急!!!!)
  • jsp读取属性文件的问题

关键词

  • w3c
  • document
  • xml
  • null
  • domone
  • printdomtree
  • node
  • dom
  • uri
  • children

得分解答快速导航

  • 帖主:lifun

相关链接

  • CSDN Java频道
  • Java类图书
  • Java类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo