• 大小: 11KB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2023-05-23
  • 语言: Java
  • 标签: java  RSS  GUI  

资源简介

使用java实现的RSS阅读器,初级水平,可供同辈伙伴进行交流。

资源截图

代码片段和文件信息

package com.tongji.rss;
import java.util.List;

import org.xml.sax.Attributes;
import org.xml.sax.helpers.DefaultHandler;

public class RSSHandler extends DefaultHandler {  
    private RSSItem mRSSItem;  
    private List mRSSItems;
      
    private final int title_STATE = 1;  
    private final int DEscriptION_STATE = 2;  
    private final int link_STATE = 3;  
    private final int PUBDATE_STATE = 4;  
      
    private int currentState; //标记当前节点   
      
    public RSSHandler(List mRSSItems){  
     this.mRSSItems=mRSSItems;
        currentState = 0;   
    }      
    public void startDocument () {  
     //文档解析开始
        mRSSItem = new RSSItem();
    }  
    public void endDocument () {  
        //文档解析结束  
    }  
  
    public void startElement (String uri String localName String qName Attributes attributes) {  
     //开始解析节点  
        if (qName.equals(“channel“)){  
            return ;  
        }     
        if (qName.equals(“item“)){  
            //当遇到一个item节点时,就实例化一个RSSItem对象  
            mRSSItem = new RSSItem();  
            return;  
        }  
        if (qName.equals(“title“)){  
            currentState = title_STATE;  
            return ;  
        }            
        if (qName.equals(“description“)){  
            currentState = DEscriptION_STATE;  
            return ;  
        }  
        if (qName.equals(“link“)){  
            currentState = link_STATE;  
            return ;  
        }           
        if (qName.equals(“pubDate“)){  
            currentState = PUBDATE_STATE;  
            return ;  
        }  
    }  
      
    public void endElement (String uri String localName String qName) {  
        //节点解析结束
     if(qName.equals(“item“))
     mRSSItems.add(mRSSItem);
    }   
    //实体分析
    public void characters (char[] ch int start int length) {  
        String str = new String(ch start length);  
        switch(currentState){  
        case title_STATE:  
            mRSSItem.settitle(str);  
            currentState = 0;  
            break;                
        case link_STATE:  
            mRSSItem.setlink(str);  
            currentState = 0;  
            break;      
        case DEscriptION_STATE:  
            mRSSItem.setDescription(str);  
            currentState = 0;  
            break;      
        case PUBDATE_STATE:  
            mRSSItem.setPubdate(str);  
            currentState = 0;  
            break;  
        }  
    }
}  

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2013-12-12 11:09  RSSReader\
     文件         301  2013-12-12 11:08  RSSReader\.classpath
     文件         385  2013-12-12 11:08  RSSReader\.project
     目录           0  2013-12-12 11:09  RSSReader\.settings\
     文件         196  2013-12-12 11:08  RSSReader\.settings\com.genuitec.eclipse.core.prefs
     文件         629  2013-12-12 11:08  RSSReader\.settings\org.eclipse.jdt.core.prefs
     目录           0  2013-12-12 11:11  RSSReader\bin\
     目录           0  2013-12-12 11:11  RSSReader\bin\com\
     目录           0  2013-12-12 11:11  RSSReader\bin\com\tongji\
     目录           0  2013-12-12 11:11  RSSReader\bin\com\tongji\rss\
     文件        1783  2013-12-12 11:11  RSSReader\bin\com\tongji\rss\RSSframe$1.class
     文件        2507  2013-12-12 11:11  RSSReader\bin\com\tongji\rss\RSSframe.class
     文件        2402  2013-12-12 13:43  RSSReader\bin\com\tongji\rss\RSSHandler.class
     文件        1105  2013-12-12 11:11  RSSReader\bin\com\tongji\rss\RSSItem.class
     文件        2684  2013-12-12 11:11  RSSReader\bin\com\tongji\rss\RSSReader.class
     目录           0  2013-12-12 11:09  RSSReader\src\
     目录           0  2013-12-12 11:09  RSSReader\src\com\
     目录           0  2013-12-12 11:09  RSSReader\src\com\tongji\
     目录           0  2013-12-12 11:09  RSSReader\src\com\tongji\rss\
     文件        2610  2013-12-12 13:43  RSSReader\src\com\tongji\rss\RSSHandler.java
     文件         668  2013-12-12 11:08  RSSReader\src\com\tongji\rss\RSSItem.java
     文件        3066  2013-12-12 11:08  RSSReader\src\com\tongji\rss\RSSReader.java

评论

共有 条评论