小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

Visual C .NET編程講座之三(3)

 dazuo0312 2006-09-09
Visual C++.NET編程講座之三(3)

  文檔數(shù)據(jù)的讀操作

  對(duì)于上述過(guò)程,我們所做的僅僅是在文檔類的Serialize函數(shù)中添加文檔數(shù)據(jù)讀取(加載)和存儲(chǔ)的代碼。需要說(shuō)明的是,Serialize函數(shù)的參數(shù)ar是一個(gè)CArchive類的引用對(duì)象。CArchive類提供了"<<"和">>"運(yùn)算符,分別可以向文檔對(duì)象寫入數(shù)據(jù)或從文檔對(duì)象中讀取數(shù)據(jù)。它們的含義與C++中的"<<"和">>"運(yùn)算符相同,只不過(guò)CArchive支持更多的數(shù)據(jù)類型,如:CObject、CString等。除此之外CArchive類還提供ReadString和WriteString成員函數(shù)來(lái)讀寫文檔中的一行文本。下面的過(guò)程用來(lái)將文檔的文本內(nèi)容讀出并保存到一個(gè)字符串集合類對(duì)象中。

  (1) 將解決方案管理器窗口切換到"類視圖",展開(kāi)所有的類,右擊類名"CTextViewerDoc",從彈出的快捷菜單中選擇"添加"->"添加變量",彈出"添加成員變量向?qū)?對(duì)話框,在"變量類型"框中輸入CStringArray,在"變量名"框中輸入m_strContent,如圖4所示。單擊"完成"按鈕。

  CStringArray是"字符串集合類",它封裝了CString數(shù)組對(duì)象的全部操作。類似的還有對(duì)BYTE、UINT、WORD和DWORD等類型的數(shù)組操作的集合類CByteArray、CUIntArray、CWordArray和CDWordArray。這些集合類都有相似的操作,如Add(添加)、RemoveAll(刪除全部元素)、GetAt(獲取指定數(shù)組下標(biāo)的元素)等。


                                     圖4 添加成員變量

  (2) 在CTextViewerDoc::Serialize函數(shù)中添加讀取文檔文本內(nèi)容代碼,如圖5所示。


                          圖5 添加的讀取文檔文本內(nèi)容代碼

  代碼中,ReadString是讀取打開(kāi)的文檔的一行文本,當(dāng)成功讀出時(shí),函數(shù)返回TRUE,當(dāng)文本達(dá)到文檔結(jié)尾時(shí),函數(shù)返回FALSE。這樣,通過(guò)while循環(huán)可以將文檔的文本內(nèi)容全部讀取并保存到m_strContent中。

  (3) 由于另一個(gè)文檔打開(kāi)時(shí),需要將m_strContent中的內(nèi)容清除,所以我們需要跟蹤DeleteContents函數(shù)。在CTextViewerDoc類的屬性窗口,單擊"重寫"按鈕,在列表框中找到DeleteContents函數(shù)項(xiàng),單擊右邊的空格后再單擊右側(cè)的下拉按鈕,出現(xiàn)一個(gè)下拉列表,如圖6所示。


                         圖6 添加DeleteContents函數(shù)的重寫

  (4) 單擊"<添加>DeleteContents",該函數(shù)的重寫就添加好了。這樣,框架在自動(dòng)執(zhí)行該函數(shù)時(shí)就會(huì)將自己添加在這個(gè)函數(shù)中的代碼也會(huì)被執(zhí)行。

  (5) 在DeleteContents中添加如圖7所示的加框代碼。


                      圖7 在DeleteContents函數(shù)中添加的代碼

  這就是文檔文本內(nèi)容的整個(gè)讀取過(guò)程。需要說(shuō)明的是,也可以將"m_strContent.RemoveAll();"語(yǔ)句直接添加在圖5中的while循環(huán)語(yǔ)句之前,從而可以省略(5)和(6)的步驟。

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多