当前位置:  技术问答>java相关

关于JAVA XML的问题,请高手指教,在线等待!

    来源: 互联网  发布时间:2017-04-17

    本文导语:  我刚学习XML不久,现在在利用JAVA来显示XML的内容时不能显示出其节点的值来,请高手指教,我怎么样才能在JSP中取得XML的节点的值来。 我的程序如下:(你可以不拘泥如我的程序,只要有指教就行,多谢了) ...

我刚学习XML不久,现在在利用JAVA来显示XML的内容时不能显示出其节点的值来,请高手指教,我怎么样才能在JSP中取得XML的节点的值来。
我的程序如下:(你可以不拘泥如我的程序,只要有指教就行,多谢了)







得到的结果如下:
0 #text's value is 
1 name's value is null
2 #text's value is 
3 address's value is null
4 #text's value is 
5 city's value is null
6 #text's value is 
7 state's value is null
8 #text's value is 
9 zip's value is null
10 #text's value is 
11 phone's value is null
12 #text's value is 
13 email's value is null
14 #text's value is 
15 web's value is null
16 #text's value is 
17 company's value is null
18 #text's value is 


得到的结果中节点名可以取出,但值都为空,不知是什么原因,不知这样取值是不是合理,怎么样取最好呢?还有结果中#text是什么东西,怎么样来的,文件中没有这人内容呀?

|
import java.util.*;
import java.io.File;
import org.jdom.Document;
import org.jdom.Element;
import org.jdom.JDOMException;
import org.jdom.input.DOMBuilder;
import org.jdom.output.XMLOutputter;


public class TestXML{
public static void main (String[] args){
      String path = "";
     try{
                       
           // path = tools.getUAprofPath(filename);
            //filename = path + filename ;
            path = "E:\technology\test\a.xml";
            PrintXML printXML = new PrintXML();
            printXML.getRoot(path);
         
        }catch (Exception e) {
            e.printStackTrace();
        }    
    }
}

class PrintXML{

        public void getRoot(String path){
         try{
            DOMBuilder builder = new DOMBuilder();
             Document doc = builder.build(new File(path));
               Element root = doc.getRootElement();
             getEle(root);
         
        }catch (JDOMException e) {
            e.printStackTrace();
        }      
        }
        
    public void getEle(Element e){
    try{
     for (Iterator i=e.getChildren().iterator(); i.hasNext(); ) {
            Element child = (Element)i.next();
            System.out.println(child.getName()+":"+child.getText());         
            getEle(child);
        }
}catch(Exception ex){
ex.printStackTrace();
}
    }  
    }
你要先去下载一个jdom的编译器,网上有很多地方可以下载。

这个里面没有使用DTD,你可以把xml里面的DTD文件说明去了,然后把path设置成你xml所在的位置,然后运行这个程序。

|


--------------因為和之間有空格或控制符,所以當成一個text結點。。。:才會出現#text's value is 

解決辦法:繼續使用getElementsByTagName();

Node node=document.getElementsByTagName("contact").item(0);
          //其中contact 是根addressbook的子节点 


Element elContact = (Element)node;
String name = elContact.getElementsByTagName("name").item(0).getFirstChild().getNodeValue();
String address = .....
其余均如此操作。

    
 
 

您可能感兴趣的文章:

  • 啊,小弟想用java做一个game,很简单那种网络飞机类game,不知道java 在图形方面的能力如何?请大虾指教指教.
  • Java菜鸟想学Java,请高手指教!(内有内容)
  • 初学Java,来这里报到个到。希望各位高手指教如果开始学习Java.
  • 学JAVA,请指教!
  • 那位高手能指教在java里string类如何转化成date型?
  • 求最容易理解,最容易上手的java书籍,servlet书籍,请指教,谢谢!!
  • 初学java,该看那些书,请朋友们指教
  • linux下java,初学者,请指教。
  • !!!java 中如何执行FTP命令?请高手指教。100分相赠
  • java中的“this”问题,请高手指教一二!
  • 关于java applet的安全限制!!!请指教!!!
  • ★一个关于java开发工具的问题,小弟初学,请大家指教
  • 为什么JAVA里的main()必须是static的呢?谢谢指教!
  • 请java高手指教
  • 第一次进java论坛,希望能够得到大家的帮助,以后多多指教。
  • Java中如何创建一个新文件(请高手指教)
  • java bean 问题,请指教
  • 请高手指教-[急!!!]怎样在linux与 window 之间,通过 C或Java 进行通信
  • 我想学JAVA ,该从何入手,可以学的更有效率一些,请各位大虾指教
  • c++转java 望高手指教
  • java判断日期字符是否有效(在线等待答案)
  • 各位兄弟,有哪位知道JAVA中JTAPI包如何用,在线等待,QQ:67178474
  • ***在线等待!!!***Java中怎样获取,应用图片?
  • 在线等待,JAVA如何播放多媒体文件?
  • 在线等待:在Java中是否有权限修改一个文件的权限?
  • 有那位仁兄知道,在LINUX下用什么命令编译JAVA原文件,谢谢,在线等待。
  • 请问java应用程序怎样打开网页(在线等待)
  • java的时间问题,在线等待!
  • 如何用Java做代理,在线等待!!
  • 急,在线等待,Java程序怎样在linux下通过脚本启动时自动运行?
  • 请问:哪里有下载Visibroker for java?我找到了两个地方,但是无法下载?(在线等待)
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 请问Java高手,Java的优势在那里??,Java主要适合于开发哪类应用程序
  • to 高手:学java应该怎样一步步学习,从菜鸟到高手.
  • 各个高手看看这个问题!本人第一次学习java所以要各位高手的帮助。。
  • 论坛 iis7站长之家
  • 从事java的高手们你们怎么看待java的发展方向啊
  • 聘请在上海工作的JAVA高手补习JAVA
  • java新手的问题,java高手帮忙...
  • 高手指点:不用JNI,如何在Java进程中新起一个JVM并在其中启动另一个Java进程。
  • 各路JAVA高手们,能否给我一个用JAVA写的简单聊天室代码?
  • 向java论坛的高手们请教(java不是我的专长)
  • 请问java高手,谁知道java怎么用 *.dll ???
  • 请各位java高手几个java有关的问题?
  • Java高手看过来:如何在JBuilder5.0 Enterprise中配置Java communication API?(急!!!)
  • 求教JAVA高手:哪里可以下载(Visual JAVA 3)的教科书?...
  • 我用telnet登陆到linux下运行了一个java程序,在关闭了telnet后怎么能让这个java程序继续执行,请高手指点一下
  • 请Linux 和Java 的高手回答:java JDK1.3.1 在红旗Linux Desktop 2.4 的问题,一定给分。
  • 请各位JAVA高手,网业高手看过来,我把能给的分都送出!!!只能给37分,哎!!
  • 请高手推荐JAVA教材
  • sybase & java 高手请进
  • 请教:Java高手读书之路
  • java命名空间java.sql类types的类成员方法: java_object定义及介绍
  • 我想学JAVA ,是买THINK IN JAVA 还是JAVA2核心技术:卷1 好???
  • java命名空间java.awt.datatransfer类dataflavor的类成员方法: imageflavor定义及介绍
  • 如何将java.util.Date转化为java.sql.Date?数据库中Date类型对应于java的哪个Date呢
  • java命名空间java.lang.management类managementfactory的类成员方法: getcompilationmxbean定义及介绍
  • 谁有电子版的《Java编程思想第二版(Thinking in java second)》和《Java2编程详解(special edition java2)》?得到给分
  • java命名空间java.lang.management接口runtimemxbean的类成员方法: getlibrarypath定义及介绍
  • 本人想学java,请问java程序员的待遇如何,和java主要有几个比较强的方向
  • java命名空间java.lang.management接口runtimemxbean的类成员方法: getstarttime定义及介绍
  • 我对JAVA一窍不通,可惜别人却给我一个Java的project,要我做一个安装程序,请问哪里有JAVA INSTALLER下载,而且我要不要安装java的sdk才能完成此项任务?
  • java命名空间java.awt.datatransfer类dataflavor的类成员方法: stringflavor定义及介绍


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3