檔案流操作tellg ,seekg

2021-08-29 03:22:30 字數 991 閱讀 1437

tellg()——返回乙個int型數值,它表示「內建指標」的目前位置。此函式僅當你在讀取乙個檔案時有效。例如:

#include

void main()

tellp()—— 與tellg()有同樣的功能,但它用於寫檔案時。總而言之:當我們讀取乙個檔案,並要知道內建指標的目前位置時,應該使用tellg();當我們寫入乙個檔案,並要知道內建指標的目前位置時,應該使用tellp(). 由於此函式的用法與tellg()完全一樣,我就不給出示例程式碼了。

seekp()—— 還記得seekg()麼?當我在讀取乙個檔案,並想到達檔案中某個特定位置時,就曾使用過它。seekp()亦如此,只不過它用於寫入乙個檔案的時候。例如,假如我在進行檔案讀寫,而要定位到目前位置的三個字元之前,則需呼叫filehandle.seekg(-3). 但如果我是在寫入乙個檔案,並且比如我要重寫後5個字元的內容,我就必須往回跳轉5個字元,因而,我應該使用filehandle.seekp(-5) .

ignore()—— 使用於讀取檔案之時。如果你想略過一定數量的字元,只需使用此函式。實際上,你也可以使用seekg()來代替,然而使用ignore()有乙個優點——你可以指定乙個特定「界限規則(delimiter rule)」,同樣使得ignore()在指定的位置停下。函式原型如下:

istream& ignore( int ncount, delimiter );

ncount表示要略過的字元數量,而delimiter

—— 與它的標籤有著同樣的含義:假如你想在檔案末尾停下,則可使用eof值傳入,這樣一來此函式就等同於seekg();但該引數還可以使用其他值,例如『\n』這樣可以在換行的同時定位在新行處。下面是示例:

#include

void main()

{// 假設test_file.txt中已經存有"hello world"這一內容

ifstream file("test_file.txt");

static char arr[

檔案操作(流)

開啟流 fi le fopen const char filename,const char mode 第乙個引數 檔名 第二個引數 方式 關閉流 r代表read的簡寫,代表可讀可寫,w代表write,b代表bit二進位制位,t代表text r 開啟唯讀檔案,該檔案必須存在 r 開啟可讀可寫的檔案,...

STL 檔案操作 流檔案操作

在c 中,有乙個stream這個類,所有的i o都以這個 流 類為基礎的,包括我們要認識的檔案i o,stream這個類有兩個重要的運算子 1 插入器 向流輸出資料。比如說系統有乙個預設的標準輸出流 cout 一般情況下就是指的顯示器,所以,cout write stdout n 就表示把字串 wr...

C 檔案流操作

include stdafx.h include include include include include using namespace std void writecharsettofile const string filename void outputfile const strin...