新书推介:《语义网技术体系》
作者:瞿裕忠,胡伟,程龚
   XML论坛     W3CHINA.ORG讨论区     计算机科学论坛     SOAChina论坛     Blog     开放翻译计划     新浪微博  
 
  • 首页
  • 登录
  • 注册
  • 软件下载
  • 资料下载
  • 核心成员
  • 帮助
  •   Add to Google

    >> 本版讨论DOM, SAX, XPath等。
    [返回] 中文XML论坛 - 专业的XML技术讨论区XML.ORG.CN讨论区 - XML技术『 DOM/SAX/XPath 』 → DOM4J编程求助,怎样定位某节点对应的某兄弟节点(具体看题目、代码) 查看新帖用户列表

      发表一个新主题  发表一个新投票  回复主题  (订阅本版) 您是本帖的第 6627 个阅读者浏览上一篇主题  刷新本主题   树形显示贴子 浏览下一篇主题
     * 贴子主题: DOM4J编程求助,怎样定位某节点对应的某兄弟节点(具体看题目、代码) 举报  打印  推荐  IE收藏夹 
       本主题类别:     
     duanweihot 帅哥哟,离线,有人找我吗?
      
      
      等级:大一新生
      文章:5
      积分:77
      门派:XML.ORG.CN
      注册:2006/6/9

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给duanweihot发送一个短消息 把duanweihot加入好友 查看duanweihot的个人资料 搜索duanweihot在『 DOM/SAX/XPath 』的所有贴子 引用回复这个贴子 回复这个贴子 查看duanweihot的博客楼主
    发贴心情 DOM4J编程求助,怎样定位某节点对应的某兄弟节点(具体看题目、代码)

    这个是要查的XML文件。
    <?xml version="1.0" encoding="gb2312"?>
    <TPI_TABLE>
    <TPI_Record>
    <篇名><![CDATA[膨胀石墨蠕虫的红外衰减性能研究]]></篇名>
    <作者><![CDATA[陈作如,万纯,李永富]]></作者>
    <机构><![CDATA[南京理工大学化工学院,南京理工大学化工学院,南京理工大学化工学院 江苏南京210094

    ,江苏南京210094

    ,江苏南京210094]]></机构>
    <关键词><![CDATA[材料科学;;膨胀石墨;;红外;;衰减]]></关键词>
    <中文摘要><![CDATA[本文报道了不同膨胀容积的膨胀石墨蠕虫的红外衰减实验结果,并将其与常用的红外干扰材料———天然鳞片状石墨的红外衰减性能作了对比研究。结果表明:膨胀石墨蠕虫比天然鳞片状石墨具有更好的红外衰减性能。膨胀石墨蠕虫的红外衰减性能与该材料的膨胀容积有关,膨胀容积大,红外衰减性能好。  ]]></中文摘要>
    <光盘号><![CDATA[SCTB0501]]></光盘号>
    <文献号><![CDATA[0]]></文献号>
    <中文刊名><![CDATA[材料科学与工程学报]]></中文刊名>
    <年><![CDATA[2005]]></年>
    <期><![CDATA[01]]></期>
    <CN><![CDATA[33-1307/T]]></CN>
    <ISSN><![CDATA[1004-793X]]></ISSN>
    <文件名><![CDATA[CLKX200501011]]></文件名>
    <页><![CDATA[42-44]]></页>
    <分类号><![CDATA[TJ04]]></分类号>
    <专题代码><![CDATA[G086]]></专题代码>
    <来源数据库><![CDATA[中国学术期刊全文数据库]]></来源数据库>
    </TPI_Record>
    <TPI_Record>
    <篇名><![CDATA[走过冬季,我们携手灿烂]]></篇名>
    <中文摘要><![CDATA[<正>一年四季52个星期365天8760小时,却在指尖触摸键盘的当儿,从我们身边走过。很快,如风,抓不住,也很慢,似孩子,《当代海军》仍存有幼稚和缺点的地方。好在读者们襟怀仁厚以笑宽之。这样,在新年到来之际,我们欣慰地告诉大家,我们已经走过冬季,已经脱掉了一件件沉重的包袱,我们欣欣向荣。并在新年到来之际,决心用实际行动,回报我们最优秀最智慧的读者们。  ]]></中文摘要>
    <光盘号><![CDATA[ELAW0502]]></光盘号>
    <文献号><![CDATA[0]]></文献号>
    <中文刊名><![CDATA[当代海军]]></中文刊名>
    <年><![CDATA[2005]]></年>
    <期><![CDATA[01]]></期>
    <CN><![CDATA[11-3650/E]]></CN>
    <ISSN><![CDATA[1006-6071]]></ISSN>
    <文件名><![CDATA[DDHJ200501001]]></文件名>
    <页><![CDATA[11]]></页>
    <分类号><![CDATA[E273]]></分类号>
    <专题代码><![CDATA[G086]]></专题代码>
    <来源数据库><![CDATA[中国学术期刊全文数据库]]></来源数据库>
    </TPI_Record>
    </TPI_TABLE>
    ==============================================
    下面是*.java代码:

    import java.io.File;
    import java.util.Iterator;
    import java.util.List;

    import org.dom4j.Document;
    import org.dom4j.Element;
    import org.dom4j.io.SAXReader;
    //import org.dom4j.tree.FlyweightCDATA;

    /**
    * @author Holen Chen
    */
    public class Dom4jDemo {
     
     public Dom4jDemo() {
     }
     
     /**
      * 根据书名来查询相关书籍的摘要。
      * @param bookname 需要查询的书名
      * @param filename 需要查询的DC文件名
      * @return 返回操作结果, 0表失败, 1表成功
      */
     public int selectXMLFile(String filename,String bookname){
      int returnValue = 0;
      try{
       SAXReader saxReader = new SAXReader(); 
       Document document = saxReader.read(new File(filename));
       List list = document.selectNodes("/TPI_TABLE/TPI_Record/" ); 
       Iterator iter = list.iterator();
       while(iter.hasNext()){
        Element ele= (Element)iter.next();
        String fcd=ele.getText();
        if(fcd.equals(bookname)) 
        {System.out.println(""+bookname+"'s information as follows");
         System.out.println("中文摘要:");
         System.out.println("!!!这里有问题需要请教:怎样获取该节点相应的书籍摘要?")
        }
        } 
       
       returnValue = 1;  
      }
      catch(Exception ex){
       ex.printStackTrace();
      }
      return returnValue; 
     } 
     public static void main(String[] args) {
      Dom4jDemo temp = new Dom4jDemo();
      System.out.println(temp.selectXMLFile("E://duanwei/grid/XML处理/dh/test.xml","膨胀石墨蠕虫的红外衰减性能研究"));
      
     }
    }


       收藏   分享  
    顶(0)
      




    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2006/7/20 15:43:00
     
     duanweihot 帅哥哟,离线,有人找我吗?
      
      
      等级:大一新生
      文章:5
      积分:77
      门派:XML.ORG.CN
      注册:2006/6/9

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给duanweihot发送一个短消息 把duanweihot加入好友 查看duanweihot的个人资料 搜索duanweihot在『 DOM/SAX/XPath 』的所有贴子 引用回复这个贴子 回复这个贴子 查看duanweihot的博客2
    发贴心情 
    问题已解决!
    package com.holen.dom4j;

    import java.io.File;
    import java.util.Iterator;
    import java.util.List;
    import java.util.*;

    import org.dom4j.Document;
    import org.dom4j.Element;
    import org.dom4j.io.SAXReader;
    import org.dom4j.Node;
    //import org.dom4j.tree.FlyweightCDATA;

    /**
    * @author Holen Chen
    */
    public class Dom4jDemo {
     
     public Dom4jDemo() {
     }
     
     /**
      * 根据书名来查询相关书籍的摘要。
      * @param bookname 需要查询的书名
      * @param filename 需要查询的DC文件名
      * @return 返回操作结果, 0表失败, 1表成功
      */
     public int selectXMLFile(String bookname,String filename){
      int returnValue = 0;
      /*try{
       System.in.read();
       bookname=in.nextLine().toString();
       //bookname="fsdf";
      }catch(Exception ex)
      {
       ex.printStackTrace();
      }*/
      try{
       SAXReader saxReader = new SAXReader(); 
       Document document = saxReader.read(new File(filename));
       List list = document.selectNodes("/TPI_TABLE/TPI_Record/篇名"); 
       Iterator iter = list.iterator();
       while(iter.hasNext()){
        Element ele= (Element)iter.next();
        String fcd=ele.getText();
        if(fcd.contains(bookname)) 
        {
         System.out.println("《"+fcd+"》");
        
        Element ele2=ele.getParent();
        List list2=ele2.elements();
        Iterator iter2=list2.iterator();
        while(iter2.hasNext()){
         Element ele3=(Element)iter2.next();
         //String xpath=ele3.getStringValue();
        //  System.out.println(xpath);
         if(ele3.getName().equals("中文摘要"))
           {
            String fcd2=ele3.getText();
            System.out.println("中文摘要:");
            System.out.println(fcd2);
           }
        }
        
        /*Node node= document.selectSingleNode("/TPI_TABLE/TPI_Record/中文摘要");
        String s2=node.getText();
         System.out.println("中文摘要:");
         System.out.println(s2);
        }
        }*/ 
        }
       returnValue = 1;  
      }
      }
      catch(Exception ex){
       ex.printStackTrace();
      }
      return returnValue; 
     } 
     public static void main(String[] args) {
      Dom4jDemo temp = new Dom4jDemo();
      System.out.println(temp.selectXMLFile("灿烂","E://duanwei/grid/XML处理/dh/cjfd2005.xml"));
      
     }
    }

    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2006/7/20 20:10:00
     
     GoogleAdSense
      
      
      等级:大一新生
      文章:1
      积分:50
      门派:无门无派
      院校:未填写
      注册:2007-01-01
    给Google AdSense发送一个短消息 把Google AdSense加入好友 查看Google AdSense的个人资料 搜索Google AdSense在『 DOM/SAX/XPath 』的所有贴子 访问Google AdSense的主页 引用回复这个贴子 回复这个贴子 查看Google AdSense的博客广告
    2024/5/6 8:00:29

    本主题贴数2,分页: [1]

    管理选项修改tag | 锁定 | 解锁 | 提升 | 删除 | 移动 | 固顶 | 总固顶 | 奖励 | 惩罚 | 发布公告
    W3C Contributing Supporter! W 3 C h i n a ( since 2003 ) 旗 下 站 点
    苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
    6,449.219ms