程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> C++入門知識 >> 教您使用Visual C++制作新聞閱讀器

教您使用Visual C++制作新聞閱讀器

編輯:C++入門知識

下面向大家介紹下如何用Visual C++進行新聞閱讀器的制作和編寫,這些內容都是一些門戶網站和技術論壇找到的,中間可能有不少錯誤是我沒有挑出的,歡迎大家學習指正。

1、RSS的結構

我們先打開百度新聞一個RSS鏈接,如果你再多打開幾個別的網站的RSS鏈接,會發現他們都有大致相同的結構。而我們在揭秘RSS上)中為大家講解的其實就是編成實現這樣的一個XML文件。為了能夠方便地對這樣的XML文檔進行處理,在本文裡,我們使用C#作為開發的語言。

分析整個RSS鏈接後,我們知道RSS大致的結構入圖1。

2、抽取的原理

知道了結構,我們還要知道結構中各部分的含義。在圖1中RSS節點表示當前是一個RSS文件,它由一個CHANNEL節點及其子節點組成,其中一些子節點提供關於頻道本身的信息,比如title表示頻道的名稱“百度互聯網新聞”)。

CHANNEL節點又包含多個ITEM子節點,而ITEM節點就是程序需要處理的部分,因為它對應著每條實際的新聞項信息, 每個ITEM節點又通過其子節點提供關於這條新聞的詳細信息。

比如title表示新聞的標題“微軟IM稱王”),link對應新聞實際的鏈接。知道了這些後,要編程就不困難啦。我們只需提取並顯示出CHANNEL和ITEM下的各條信息就可以了。現在來看看具體的實現方法吧。

二、用Visual C++做個程序讀新聞

對RSS有一定了解後,我們開始編寫程序。先還是需要一個最簡單的界面。新建一個Win Form 工程,在Form上放置一個Label,一個文本框txtURL用來輸入RSS鏈接就是各網站RSS鏈接中包含的地址),一個按鈕bnRead用來執行讀取新聞, 一個TreeView樹形控件treeRSS顯示讀出的新聞項。

1、定義裝載結構

根據上面分析的RSS結構,我們首先來建立一個rss類,用它來裝載RSS鏈接中CHANNEL和ITEM的各條信息。代碼如下:

  1. public class rss   
  2. {   
  3.  public struct Channel   
  4.  {   
  5. public string Title;   
  6. public Hashtable Items;   
  7.  }   
  8.  
  9.  public struct Item   
  10.  {   
  11. public string Title;   
  12. public string Description;   
  13. public string Link;   
  14.  }   

Visual C++結構將存儲CHANNEL節點包含的所有子節點信息,其中Items成員字段是一個Hashtable集合,程序會將Item結構作為對象加入集合,用來存儲Channel下的所有Item節點。這裡我只讀取了有限的幾個節點,讀者可以根據實際需要擴展整個結構定義。

  1. 簡介學習C++總結之談
  2. 對C++庫函數進行學習探索總結筆記
  3. C++類庫設計的基本構思與方法
  4. C++語言真的還有市場價值?
  5. C++類庫設計的基本構思與方法

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved