blogjava's web log
blogjava's web log
...
讀新浪博客示例[源代碼下載]
??????????? 當然。只是個DEMO. 功能還是很簡單。BUG? 也不少。有興趣你可以下載 自己再改改。
?界面:
閱讀界面:
關鍵代碼:
?
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
閱讀(701)
評論(0)
編輯
收藏
新用戶注冊
刷新評論列表
只有注冊用戶
登錄
后才能發表評論。
網站導航:
博客園
IT新聞
Chat2DB
C++博客
博問
管理
導航
首頁
聯系
聚合
管理
常用鏈接
我的隨筆
我的評論
我的參與
最新評論
留言簿
(44)
給我留言
查看公開留言
查看私人留言
新聞檔案
2007年5月 (1)
2007年4月 (1)
2007年3月 (4)
2007年1月 (8)
2006年12月 (16)
2006年11月 (3)
2.動態語言
IronPython
JRuby
Python
Rails Framework Documentation
Ruby Central
Ruby on rails
Ruby On Rails中文社區
Ruby 中文社區
Ruby_cn (blog)
ruby-doc
Rubyforge
Ruby-lang
3.工具箱
computer performance
寫字找圖片
網站歷史查詢
驅動
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源代碼學習
XPath 教程
夏昕ibatis
夏昕的Hibernate
夏昕的Spring
友情鏈接
搬家公司
討債公司
搜索
最新評論
1.?re: 周公解夢夢見豬血灑頭上手上
不錯
--娟娟
Powered by:
BlogJava
Copyright © record java and net
主站蜘蛛池模板:
亚洲人成黄网在线观看
|
免费亚洲视频在线观看
|
免费A级毛片无码视频
|
午夜福利不卡片在线播放免费
|
国内免费高清在线观看
|
亚洲人成色77777在线观看大
|
亚洲五月综合缴情在线观看
|
亚洲成综合人影院在院播放
|
国产精品亚洲а∨无码播放不卡
|
亚欧乱色国产精品免费视频
|
亚洲网站在线免费观看
|
一本久到久久亚洲综合
|
亚洲第一AAAAA片
|
亚洲a∨无码精品色午夜
|
最近的中文字幕大全免费8
|
免费大黄网站在线观看
|
成年网在线观看免费观看网址
|
免费看男女下面日出水来
|
红杏亚洲影院一区二区三区
|
亚洲精品伊人久久久久
|
久久精品无码免费不卡
|
麻豆国产精品入口免费观看
|
国产V亚洲V天堂无码久久久
|
久久久久亚洲国产AV麻豆
|
国产成人免费网站在线观看
|
久久久久亚洲AV无码永不
|
免费看美女午夜大片
|
色播在线永久免费视频
|
亚洲天堂免费在线视频
|
久久久久亚洲av无码专区导航
|
毛片免费vip会员在线看
|
色播亚洲视频在线观看
|
国产香蕉九九久久精品免费
|
免费VA在线观看无码
|
久久久久久a亚洲欧洲aⅴ
|
国产美女在线精品免费观看
|
一级女性全黄生活片免费看
|
国产高清免费观看
|
国产免费无码AV片在线观看不卡
|
精品久久久久国产免费
|
一级a性色生活片久久无少妇一级婬片免费放
|