在VC 應用程式中讀取文字資料

2021-04-07 06:27:42 字數 2100 閱讀 1794

我們通常把資料存諸在

txt檔案上,但是我們通常要把這些資料取出來並進行處理。下面我將介紹一種在

vc++

應用程式中讀取文字資料的方法。

一.前言

因為經常要處理地質方面的資料。但是很多資料它不是直接存貯在資料庫檔案(如

access

檔案等),而是存貯在

txt檔案。經常有同學問我怎麼通過程式設計讀取實現文字檔案中的資料。其實存貯在

txt檔案也有它的好處,不像讀取

access

檔案那樣要註冊資料來源,設定比較麻煩,編寫讀取程式也比較複雜。

二.程式原理

首先我們知道假如要進行的檔案操作只是簡單的讀寫整行的字串,那麼最好使用

cstdiofile

,用它來進行此類操作非常方便。因此我們便很自然想到:首先我們把文字檔案的每行資料讀到乙個緩衝區,然後使用

sscanf

把它轉化為字元格式。

那麼具體該怎麼做呢?比如在乙個

txt檔案裡每一行資料格式是這樣的:

a

1 a

2 a

3 a

3 ......an

那麼讀取的主體**是:

cstdiofile file; // 定義乙個cstdiofile類變數file

cstring filedata; // 定義乙個cstring,作為乙個緩衝區

/*定義n個臨時字串變數,大小依據實際情況,這裡暫設為10

*/char tempstr1[10],tempstr2[10]......tempstrn[10];

file.readstring(filedata); // 將一行資料讀到緩衝區

/*將該行資料的n個字元讀到n個臨時字串變數*/

sscanf(filedata,"%s %s %s %s ......%s",tempstr1,tempstr2......tempstrn);

這種讀法的乙個好處是對文字格式要求不嚴,如下面的格式也可以

(前面可有未知個空格)

a

1 a

2

(兩個資料之間也可有未知個空格)

a

3 a

3 ......an

三.程式設計步驟

下面我以乙個單文件程式來具體說明我的做法。

該程式的主要功能是讀取文字檔案的座標資料,然後在客戶區里用直線將這些座標連起來,並顯示。

1、啟動

visual c++6.0

,生成乙個單文件的工程,將該工程命名為

readcoodinate。2、

新增乙個「讀取文字資料」的選單項。

3、給檢視類新增兩個

public

變數:carraym_pointarray; // 用於記錄座標點資料

int m_pointnum; // 用於記錄座標點個數,在檢視類建構函式中初始化為0。

4、給「讀取文字資料」新增相應的單擊訊息響應函式。**如下:

void creadcoodinateview::onreaddata()

releasedc(pdc); //使用完後,釋放裝置環境

}

}程式執行結果的效果圖如下:

1.選取乙個

txt檔案

2.單擊確定後繪製直線,如下圖:

其中示例資料檔案的格式是這樣的:(第一行為座標個數,餘下的是座標點資料)

5

1020

3040

4585

100120

200300

這個程式的乙個優點是對文字資料格式並不嚴格,你可以把資料編輯成下面形式,但讀出來的效果是一樣的,(只要

x座標和

y座標中間有乙個空格就可以了)

5

1020

3040

4585

100120

200300

三.小結

上面只是小小的示例,讀者朋友可以將文字資料傳化為其它形式的資料(如將字元型資料轉化為浮點型),進行更複雜的資料處理,其中原理是一樣的。上面程式的編譯環境是:

win2000

,vc++6.0

在VC 應用程式中讀取文字資料

我們通常把資料存諸在 txt檔案上,但是我們通常要把這些資料取出來並進行處理。下面我將介紹一種在 vc 應用程式中讀取文字資料的方法。一 前言 因為經常要處理地質方面的資料。但是很多資料它不是直接存貯在資料庫檔案 如 access 檔案等 而是存貯在 txt檔案。經常有同學問我怎麼通過程式設計讀取實...

在VC 應用程式中讀取文字資料

朱金燦 我們通常把資料存諸在txt檔案上,但是我們通常要把這些資料取出來並進行處理。下面我將介紹一種在vc 應用程式中讀取文字資料的方法。一 前言 因為經常要處理地質方面的資料。但是很多資料它不是直接存貯在資料庫檔案 如access檔案等 而是存貯在txt檔案。經常有同學問我怎麼通過程式設計讀取實現...

VC程式設計讀取文字資料

vc程式設計讀取文字資料 我們通常把資料存諸在 txt檔案上,但是我們通常要把這些資料取出來並進行處理。下面我將介紹一種在 vc 應用程式中讀取文字資料的方法。一 前言 因為經常要處理地質方面的資料。但是很多資料它不是直接存貯在資料庫檔案 如 access 檔案等 而是存貯在 txt檔案。經常有同學...