C++Builder隨機文件

字號:

如果要讓文件中的數(shù)據(jù)能夠隨意存取,而不要按照數(shù)據(jù)的先后順序?qū)懭牖蛘咦x出,那么就需要利用隨機文件。同一個隨機文件中每一條記錄在磁盤中所使用的長度是一定的。隨機文件中每一條記錄都指定一個編號,存取時按照編號計算出其所存放位置,來存取數(shù)據(jù)。
    隨機文件中用到的函數(shù)如下:
    (1)fseek函數(shù):
    ·語法:int fseek(FILE*stream,long offset,int whence)。
    ·功能:將指針移動到文件指定位置。
    ·說明:stream:文件指針名稱必須和fopen函數(shù)的文件指針名稱相同;
    whence:文件位置;
    offset:相對于whence所在位置,以Byte為單位。
    (2)fwrite函數(shù):
    ·語法:size t fwrite(const void。ptr,size_tsize,size_tn,F(xiàn)ILE。stream)。
    ·功能:將數(shù)據(jù)寫入隨機文件中。
    (3)fread函數(shù):
    ·語法:size t fread(void*ptr,size_t size,size_t n,F(xiàn)ILE*stream)。
    ·功能:將數(shù)據(jù)由隨機文件中讀出。
    ·說明:stream:為文件指針;
    Dtr:為文件指針或存取變量名稱,若為變量前面加&;
    size:一條記錄大小,以Byte為單位;
    n:每次存取多少個數(shù)據(jù)。