blogjava's web log
blogjava's web log
...
讀新浪博客示例[源代碼下載]
??????????? 當(dāng)然。只是個DEMO. 功能還是很簡單。BUG? 也不少。有興趣你可以下載 自己再改改。
?界面:
閱讀界面:
關(guān)鍵代碼:
?
public
??
static
?ArrayList?read(
string
?url,?HttpWebRequest?request,?
bool
?isFirst)
????????
{
????????????Stream?stream?
=
?
null
;
????????????Uri?uri?
=
?
new
?Uri(url);
????????????
switch
?(uri.Scheme)
????????????
{
????????????????
case
?
"
file
"
:
????????????????????
break
;
????????????????
case
?
"
https
"
:
????????????????????
goto
?
case
?
"
http
"
;
????????????????
case
?
"
http
"
:
????????????????????
if
?(request?
==
?
null
)
????????????????????????request?
=
?(HttpWebRequest)WebRequest.Create(uri);
????????????????????
try
????????????????????
{
????????????????????????HttpWebResponse?response?
=
?(HttpWebResponse)request.GetResponse();
????????????????????????
try
????????????????????????
{
????????????????????????????
if
?(response.ContentEncoding?
!=
?
""
)
????????????????????????Encoding.GetEncoding(response.ContentEncoding);
????????????????????????}
????????????????????????
catch
?
{?}
????????????????????????stream?
=
?response.GetResponseStream();
????????????????????}
????????????????????
catch
?(WebException?we)
????????????????????
{
????????????????????}
????????????????????
break
;
????????????}
????????????ArrayList?list?
=
?
null
;
????????????
if
?(stream?
!=
?
null
)
????????????
{
????????????????RssSina?rssSina?
=
?
new
?RssSina(stream);
????????????????list
=
?rssSina.Read(isFirst);
????????????????rssSina.Close();
???????????????????
???????
????????????}
????????????
return
?list;
???????????
????????}
分析 新浪的RSS? 就是用的這個方法了。
??????
/**/
///
?
<summary>
????????
///
?Read?rss
????????
///
?
</summary>
????????
///
?
<returns></returns>
????????
public
?ArrayList?Read(
bool
?isFirst)
????????
{
????????????
int
?i?
=
?
0
;
????????????StringBuilder?sb?
=
?
new
?StringBuilder();
????????????
bool
?readData?
=
?
false
;
????????????
if
?(reader?
!=
?
null
)
????????????
{
????????????????
do
????????????????
{
????????????????????pushElement?
=
?
true
;
????????????????????readData?
=
?reader.Read();
????????????????????
string
?readerName?
=
?reader.Name.ToLower();
????????????????????
switch
?(reader.NodeType)
????????????????????
{
??????????????????
????????????????????????
case
?XmlNodeType.Element:
????????????????????????????
{
????????????????????????????????elementText?
=
?
new
?StringBuilder();
????????????????????????????????
if
?(reader.IsEmptyElement)
????????????????????????????????????
break
;
????????????????????????????????
if
?(pushElement)
????????????????????????????????????xmlNodeStack.Push(readerName);
????????????????????????????????
break
;
????????????????????????????}
????????????????????????
case
?XmlNodeType.EndElement:
????????????????????????????
{
????????????????????????????????
if
?(xmlNodeStack.Count?
==
?
1
)
????????????????????????????????????
break
;
????????????????????????????????
string
?childElementName?
=
?(
string
)xmlNodeStack.Pop();
????????????????????????????????
string
?parentElementName?
=
?(
string
)xmlNodeStack.Peek();
????????????????????????????????
switch
?(childElementName)
????????????????????????????????
{
????????????????????????????????????
item?classes
#region
?item?classes
????????????????????????????????????
case
?
"
rss
"
:
????????????????????????????????????????readData?
=
?
false
;
????????????????????????????????????????
break
;
????????????????????????????????????
case
?
"
channel
"
:?;
????????????????????????????????????????readData?
=
?
false
;
????????????????????????????????????????
break
;
????????????????????????????????????
#endregion
????????????????????????????????}
????????????????????????????????
switch
?(parentElementName)
????????????????????????????????
{
???????????????????????????????????????
????????????????????????????????????
case
?
"
sns:a
"
:
????????????????????????????????????????
switch
?(childElementName)
????????????????????????????????????????
{
????????????????????????????????????????????
case
?
"
sns:href
"
:
????????????????????????????????????????????????
if
?(isFirst)
????????????????????????????????????????????????
{
???????????????????????????????????????????????????
????????????????????????????????????????????????????
if
?(
!
pageList.Contains(elementText.ToString())?
&&
?elementText.ToString().Length?
!=
?
0
)
????????????????????????????????????????????????????
{
????????????????????????????????????????????????????????
????????????????????????????????????????????????????????pageList.Add(elementText.ToString());
????????????????????????????????????????????????????}
???????????????????????????????????????????????????
????????????????????????????????????????????????}
????????????????????????????????????????????????
break
;
????????????????????????????????????????}
????????????????????????????????????????
break
;
????????????????????????????????????????
????????????????????????????????????
case
?
"
item
"
:
????????????????????????????????????????
switch
?(childElementName)
????????????????????????????????????????
{
????????????????????????????????????????????
case
?
"
title
"
:
???????????????????????????????????????????????
//
?listTitle.Add(elementText.ToString());
????????????????????????????????????????????????
break
;
????????????????????????????????????????????
case
?
"
link
"
:
???????????????????????????????????????????????linkList.Add(elementText.ToString());
????????????????????????????????????????????????
break
;
????????????????????????????????????????????
case
?
"
description
"
:
????????????????????????????????????????????????
break
;
????????????????????????????????????????????
case
?
"
sns:pubDate
"
:
????????????????????????????????????????????????
break
;
????????????????????????????????????????}
????????????????????????????????????????
break
;
????????????????????????????????}
????????????????????????????????
break
;
????????????????????????????}
????????????????????????????
case
?XmlNodeType.Text:
????????????????????????????
{
????????????????????????????????elementText.Append(reader.Value);
????????????????????????????????
break
;
????????????????????????????}
????????????????????????????
case
?XmlNodeType.CDATA:
????????????????????????????
{
????????????????????????????????elementText.Append(reader.Value);
????????????????????????????????i
++
;
????????????????????????????????
break
;
????????????????????????????}
????????????????????}
????????????????}
????????????????
while
?(readData);
????????????????
????????????}
????????????listCont.Add(linkList);
????????????
if
(pageList.Count
!=
0
)
????????????????listCont.Add(pageList);
????????????
return
?listCont;
????????}
詳細 請下載源代碼研究。。
地址
http://m.tkk7.com/Files/wujun/WjSinaArticlesDemo.rar
點擊這里直接下載
posted on 2006-10-23 15:50
record java and net
閱讀(696)
評論(0)
編輯
收藏
新用戶注冊
刷新評論列表
只有注冊用戶
登錄
后才能發(fā)表評論。
網(wǎng)站導(dǎo)航:
博客園
IT新聞
Chat2DB
C++博客
博問
管理
導(dǎo)航
首頁
聯(lián)系
聚合
管理
常用鏈接
我的隨筆
我的評論
我的參與
最新評論
留言簿
(44)
給我留言
查看公開留言
查看私人留言
新聞檔案
2007年5月 (1)
2007年4月 (1)
2007年3月 (4)
2007年1月 (8)
2006年12月 (16)
2006年11月 (3)
2.動態(tài)語言
IronPython
JRuby
Python
Rails Framework Documentation
Ruby Central
Ruby on rails
Ruby On Rails中文社區(qū)
Ruby 中文社區(qū)
Ruby_cn (blog)
ruby-doc
Rubyforge
Ruby-lang
3.工具箱
computer performance
寫字找圖片
網(wǎng)站歷史查詢
驅(qū)動
9.
文檔教程
Free Computer Books
New!
Spring2.0中文參考手冊
New
Apache ant1.6.2源代碼
Apache2.2 文檔
Dhtml參考
hibernate三中文文檔
java api
javascript參考
mysql中文文檔
NHibernate 1.2文檔
Spring - Framework
spring--教程
spring源代碼學(xué)習(xí)
XPath 教程
夏昕ibatis
夏昕的Hibernate
夏昕的Spring
友情鏈接
搬家公司
討債公司
搜索
最新評論
1.?re: 周公解夢夢見豬血灑頭上手上
不錯
--娟娟
Powered by:
BlogJava
Copyright © record java and net
主站蜘蛛池模板:
亚洲AV中文无码乱人伦
|
国产免费小视频在线观看
|
免费成人av电影
|
高清免费久久午夜精品
|
全黄a免费一级毛片人人爱
|
日日麻批免费40分钟日本的
|
亚洲中文字幕无码一去台湾
|
手机在线毛片免费播放
|
久久精品国产亚洲AV天海翼
|
国产精品亚洲视频
|
无码日韩精品一区二区三区免费
|
亚洲三级视频在线
|
亚洲麻豆精品国偷自产在线91
|
一个人免费观看www视频
|
亚洲国产精品国自产拍电影
|
成人国产mv免费视频
|
国产免费无码一区二区
|
男女作爱免费网站
|
亚洲色偷偷综合亚洲AV伊人蜜桃
|
日本一道高清不卡免费
|
国产大片免费观看中文字幕
|
99精品视频在线观看免费专区
|
久久亚洲精品无码av
|
亚洲另类激情综合偷自拍
|
亚洲国产精品久久久久
|
久久精品国产亚洲av麻豆蜜芽
|
在线精品亚洲一区二区
|
国产亚洲精品美女久久久久久下载
|
亚洲男女一区二区三区
|
亚洲国产a∨无码中文777
|
亚洲午夜成人精品电影在线观看
|
日韩视频在线精品视频免费观看
|
亚洲国产成人综合
|
久久夜色精品国产噜噜噜亚洲AV
|
狠狠综合久久综合88亚洲
|
免费一级e一片在线播放
|
亚洲国产精品VA在线观看麻豆
|
亚洲依依成人亚洲社区
|
久久久久成人精品免费播放动漫
|
国产啪精品视频网免费
|
毛片免费全部播放一级
|