関数名:lseek
ヘッダーファイル: <io.h>
関数プロトタイプ: int lseek(int handle,long offset,long length);
機能: 開いているファイルのポインタを移動するために使用します
パラメータ: int handle は、ファイル ポインタの移動先となるファイル ハンドルです。
long offset は移動するオフセットです
int from は、ファイル ポインターのオフセットが計算される方向です。
次の 3 つの値があります。
SEEK_SET ファイルの先頭
SEEK_CUR ファイルの現在の場所
SEEK_END ファイルの終わり
戻り値: ファイルポインタ移動後のファイルポインタの位置
プログラム例: www.dotcpp.com が大好きな内容のファイルを作成します。
// ファイルを開き、7 バイトをスキップし、14 文字を取得します。 #include<stdio.h>#include<io.h>#include<fcntl.h>intmain(void){intfd=open(D:\a.txt,O_RDONLY);if(fd==-1){ printf(cannotopenthefilen);return1;}intpos=tell(fd);printf(beforelseekfunction,currentposition:%ldn,pos);lseek(fd,7,SEEK_SET);//ファイルの先頭オフセットに移動7 バイトの位置 charbuf[20]={n};read(fd,buf,14);printf(theresis%sn,buf);pos=tell(fd);printf(afterlseekfunction,currentposition:% ld n,pos);close(fd);return0;}
走行結果
beforelseek関数、現在の位置:0theresiswww.dotcpp.comafterlseek関数、現在の位置:21