`
wdhdd889
  • 浏览: 151834 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Rss 2.0 xml 文件创建实例

    博客分类:
  • xml
阅读更多
Item bean 类
package org.shenhongwei.createrssxml;

import java.util.Date;

/**
* Project :
* Code Name : Carbon Dioxide
*
* Description :
*
* @author shenhongwei
* @version 2009-5-21
*/
/**
* item元素bean对象
*/
public class Item {
private String link;

private String title;

private String author;

private Date PubDate;

private String guid;

private String description;

public String getAuthor() {
return author;
}

public void setAuthor(String author) {
this.author = author;
}

public String getDescription() {
return description;
}

public void setDescription(String description) {
this.description = description;
}

public String getGuid() {
return guid;
}

public void setGuid(String guid) {
this.guid = guid;
}

public String getLink() {
return link;
}

public void setLink(String link) {
this.link = link;
}

public Date getPubDate() {
return PubDate;
}

public void setPubDate(Date pubDate) {
PubDate = pubDate;
}

public String getTitle() {
return title;
}

public void setTitle(String title) {
this.title = title;
}
}


创建实现

package org.shenhongwei.createrssxml;

import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.text.Format;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Date;
import java.util.List;

import org.jdom.Document;
import org.jdom.Element;
import org.jdom.output.XMLOutputter;

/**
* Project :
* Code Name :
*
* Description :实现创建方法
*
* @author shenhongwei
* @version 2009-5-21
*/


public class RssXmlCreate {


/**
* 创建Rss Xml文件
* @param path  生成xml文件存放路径
* @param list  Item对象列表
*/
public void CreateRssXml(String path, List list) {
Element root = new Element("rss");
root.setAttribute("version", "2.0");
Document doc;
FileOutputStream fo;
try {
Element channel = new Element("channel");
Element title = new Element("title");
title.setText("jack");

Element link = new Element("link");
link.setText("www.jack.com");

Element description = new Element("description");
description.setText("黑白电影");

Element language = new Element("language");
language.setText("en");

Element image = new Element("image");

Element url = new Element("url");
url.setText("www.jack.cn/jack.gif");

Element title1 = new Element("title");
title1.setText("jack");

Element link1 = new Element("link");
link1.setText("www.jack.com");

Element description1 = new Element("description");
description1.setText("黑白电影");
image.addContent(title1);
image.addContent(link1);
image.addContent(url);
image.addContent(description1);

Collection lists = this.getItem(list);
channel.addContent(lists);
// Element item = new Element("item");
// Element itemlink = new Element("link");
// itemlink.setText("http://www.auiou.com/relevant/00000496.jsp");
// Element itemtitle = new Element("title");
// itemtitle.setText("这年月的天");
// Element author = new Element("author");
// author.setText("黑白天涯");
// Element pubDate = new Element("pubDate");
// pubDate.setText("2009-05-03 13.30");
// Element guid = new Element("guid");
// guid.setText("http://www.auiou.com/relevant/00000496.jsp");
// Element itemdescription = new Element("description");
// item.addContent(itemlink);
// item.addContent(itemtitle);
// item.addContent(author);
// item.addContent(pubDate);
// item.addContent(guid);
// item.addContent(itemdescription);
//
// channel.addContent(item);

channel.addContent(title);
channel.addContent(link);
channel.addContent(description);
channel.addContent(language);
channel.addContent(image);
root.addContent(channel);

doc = new Document(root);
XMLOutputter out = new XMLOutputter();
fo = new FileOutputStream(path);
out.output(doc, fo);

} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
  
/**
* 根据Item对象列表 返回Rss  Item元素列表
* @param list
* @return
*/
public Collection getItem(List list) {
Collection items = new ArrayList();
Element item, link, title, author, pubDate, description, guid;
Item it;
if (list.size() != 0 && !"".equals(list.size())) {

for (int i = 0; i < list.size(); i++) {
it = (Item) list.get(i);
link = new Element("link").setText(it.getLink());
title = new Element("title").setText(it.getTitle());
author = new Element("author").setText(it.getAuthor());
pubDate = new Element("pubDate").setText(this.format(it
.getPubDate()));
guid = new Element("guid").setText(it.getGuid());
description = new Element("description").setText(it
.getDescription());
item = new Element("Element");
item.addContent(link);
item.addContent(title);
item.addContent(author);
item.addContent(pubDate);
item.addContent(guid);
item.addContent(description);
items.add(item);
}
}
return items;
}
   /**
    *对日期类型数据进行格式化输出
    * @param date
    * @return
    */
public String format(Date date) {
Format format = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
String string = format.format(date);
return string;
}

}

 
功能方法测试
  package org.shenhongwei.createrssxml;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

/**
* Project :
* Code Name : Carbon Dioxide
*
* Description :
*
* @author shenhongwei
* @version 2009-5-21
*/
@SuppressWarnings("unchecked")
public class Test {

/**
* 不同的Item对象参数值  返回item对象列表
* @return
*/
public List getItem() {
List list = new ArrayList();
Item item;
for (int i = 1; i < 10; i++) {
item = new Item();
item.setAuthor(Integer.toString(i));
item.setLink(Integer.toString(i));
item.setGuid(Integer.toString(i));
item.setPubDate(new Date());
item.setTitle(Integer.toString(i));
item.setDescription(Integer.toString(i));
list.add(item);
}

return list;
}

/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
RssXmlCreate rxc = new RssXmlCreate();
Test t = new Test();
List list = t.getItem();
String path = "src/rss.xml";
rxc.CreateRssXml(path, list);
}

}
分享到:
评论

相关推荐

    php Rss 2.0 生成类

    在这个文件中,开发者可能会看到如何实例化RSS类,填充频道信息,然后添加多条条目,最后输出生成的RSS 2.0 Feed。这为初学者提供了一个很好的起点,了解如何实际应用这个类来创建自己的RSS源。 PHP类的实现可能...

    RSS2.0规范及样例

    - **RSS2.0样例.xml**:这个文件是RSS2.0的具体应用实例,包含了完整的RSS2.0 feed结构,包括频道信息和多条条目。通过分析这个样例,可以学习如何编写符合规范的RSS feed。 了解RSS2.0规范及其样例对于开发内容...

    生成 Rss 2.0 的ASP类

    在实际应用中,你可以创建一个实例化这个类的对象,然后调用其方法填充RSS信息。例如: ```vbscript Dim rssGen Set rssGen = New RSSClass rssGen.ChannelTitle = "我的博客" rssGen.ChannelDescription = "分享...

    RSS阅读器(XML文件解析)

    1. **初始化SAXParserFactory**: 首先,我们需要创建一个SAXParserFactory实例,然后调用其newSAXParser()方法来获取SAXParser对象。 ```java SAXParserFactory factory = SAXParserFactory.newInstance(); ...

    rss-2.0-generation-class:RSS 2.0 生成类

    1. **创建实例**:首先,创建一个RSS 2.0 Generation Class的实例,通常会指定频道的基本信息,如频道标题、描述和URL。 2. **添加条目**:然后,为频道添加多个条目,每个条目都包括其特有的信息。 3. **设置元数据...

    rss.rar_RSS_RSS PHP

    在描述中提到,“RSS2.0生成类”是指这个项目提供了一个PHP类,能够帮助开发者创建符合RSS 2.0规范的XML结构。RSS 2.0是RSS的一个版本,包含了元数据元素,如标题、描述、链接等,用于描述一个内容源的条目。这个...

    .net RssFeed制作实例下载

    在这个实例中,可能存放了RSS Feed的数据源,如XML文件或数据库。 3. Images:这个文件夹可能包含了RSS Feed中使用的图像资源,如文章的缩略图。 五、部署与使用 1. 下载源码:用户可以免费下载这个实例,然后在...

    ASP.net 2.0的web2.0应用-blog、Tags、Rss、Xml和ajax mail

    ASP.NET 2.0提供了RSS Feed Writer,可以通过它生成符合RSS标准的XML文件,以便用户通过RSS阅读器获取更新。 4. **XML处理**:XML是一种用于数据交换和结构化数据存储的标准格式。在ASP.NET 2.0中,可以使用Xml...

    rss 和 atom 输出xml格式实例

    总的来说,`rss.xml`和`atom.xml`文件代表了RSS和Atom两种XML格式在实际应用中的实例。它们提供了结构化的数据,使得用户可以轻松地获取和跟踪Web内容的更新,而无需频繁地访问各个网站。理解这两种格式对于Web开发...

    PHP RSS/Feed 生成类库(支持RSS 1.0/2.0和ATOM)

    在IT行业中,RSS(Really Simple Syndication)和Atom是两种广泛使用的XML格式,用于创建和分发新闻提要、博客文章和其他在线内容。PHP作为服务器端脚本语言,提供了多种库来帮助开发者生成这些提要。本文将详细介绍...

    PHP生成RSS文件类实例_.docx

    创建一个RSS对象并添加项目,然后显示或保存到文件: ```php $rss = new rss('redfox', 'http://example.com/', "redfox's blog"); $rss-&gt;additem('Article Title', 'http://example.com/article', 'Article ...

    rss技术实例与剖析

    这通常涉及到创建RSS文件,定义必要的XML元素,并将其链接放在网站的显著位置,以便用户可以订阅。 6. **Common**:这个词可能是误输入或不完整,但在RSS上下文中,可能是指公共RSS feed或共享的标准元素,如`...

    rss,RSS开发过程

    1. `rss`:RSS文件的根元素,通常包含版本号属性,如`version="2.0"`。 2. `channel`:频道元素,代表RSS源的基本信息,包括标题、链接和描述。 3. `title`:频道的标题,描述RSS源的主题。 4. `link`:频道的URL,...

    crxml:一个用于生成xml格式数据php类库,支持生成rss.zip

    `crxml` 是一个专门为PHP设计的类库,用于生成XML格式的数据,尤其值得一提的是,它还支持生成RSS(Really Simple Syndication)格式的文件,这在创建新闻聚合、博客订阅源等方面非常有用。 `crxml` 类库的核心功能...

    js JavaScript 解析 rss 实例

    RSS文件通常为XML格式,包含一系列频道(channel)元素,每个频道下有多个条目(item)元素。每个条目包含了标题(title)、链接(link)、描述(description)等信息。例如: ```xml &lt;rss version="2.0"&gt; 示例...

    RSS从入门到精通(Java语言初级版)-WORD、实例代码、jar包

    - 创建RSS feed:了解如何使用Java生成符合RSS规范的XML文件。 - 解析RSS feed:学会使用Java解析RSS XML,提取所需信息。 - 集成RSS到应用:知道如何在Web应用或其他Java项目中添加RSS阅读和展示功能。 - 使用开源...

    RSS RSSFEED

    在RSS 2.0标准下,RSS文件的结构遵循XML规则。一个基本的RSS 2.0文件通常包含`&lt;rss&gt;`根元素,其`version`属性指定为2.0,以及一个`&lt;channel&gt;`元素。`&lt;channel&gt;`元素下有多个必需和可选子元素,如: - `&lt;title&gt;`:...

    零散实例.rar

    在Java中,处理RSS馈送通常涉及解析RSS XML文档,创建RSS Feed对象模型,并提供方法进行读取、写入和操作这些馈送。这个“零散实例.rar”压缩包包含了一个关于Java RSS处理的实例,名为“css示例1”,可能是一个简单...

    用 Asp.Net 建立一个在线 RSS 新闻聚合器的方法

    - **RSS 2.0规范**:该规范规定了RSS文件的基本结构,包括根元素`&lt;rss&gt;`、通道元素`&lt;channel&gt;`以及项元素`&lt;item&gt;`等。RSS文件必须符合XML的格式要求,如所有元素需正确嵌套、属性值需用引号括起来等。 - **RSS文件...

    RSS从入门到精通(初级版)-PDF、实例代码、jar包.rar

    4. **创建RSS Feed**:指导如何编写符合规范的RSS XML文件,包括基本元素的设置和命名空间的使用。 5. **RSS订阅**:介绍RSS阅读器的工作原理,以及如何通过RSS阅读器订阅和管理RSS源。 6. **RSS应用**:探讨RSS在...

Global site tag (gtag.js) - Google Analytics