tellg() ——返回一個int型數值,它表示“內置指標”的目前位置。此函數僅當你在讀取一個文件時有效。例如:
   
#include <fstream.h>
     
    void main()
    {
       
// 假如我們已經在test_file.txt中存有了“Hello”的內容
   
    ifstream File("test_file.txt");
     
        char arr[10];
     
        File.read(arr,10);
       
       
// 由於Hello佔5個字元,因此這裏將返回5
   
    cout << File.tellg() << endl;
     
        File.close();
    }
   
   
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 <fstream.h>
     
    void main()
    {
       
// 假設test_file.txt中已經存有"Hello World"這一內容
   
    ifstream File("test_file.txt");
     
        static char arr[