我在看一些别人的代码时,经常看到这个函数的。我看帮助后,还是不能理解,请哪位高手指点一下,该函数的用途,另外,最好能给出相关的例子,谢谢。

解决方案 »

  1.   

    联机帮助的例子:
        var
       f: file of Byte;
       size : Longint;
       S: string;
       y: Integer;
     begin
       if OpenDialog1.Execute then
       begin
         AssignFile(f, OpenDialog1.FileName);
         Reset(f);
         size := FileSize(f);
         S := 'File size in bytes: ' + IntToStr(size);
         y := 10;
         Canvas.TextOut(5, y, S);
         y := y + Canvas.TextHeight(S) + 5;
         S := 'Seeking halfway into file...';
         Canvas.TextOut(5, y, S);     y := y + Canvas.TextHeight(S) + 5;
         Seek(f,size div 2);         //指针移至文本f中间位置
         S := 'Position is now ' + IntToStr(FilePos(f));
         Canvas.TextOut(5, y, S);
         CloseFile(f);
       end;
     end;
      

  2.   

    procedure Seek(var F; N: Longint);
    将文件流f的当前指针定位在N的位置procedure TForm1.Button1Click(Sender: TObject);var
       f: file of Byte;
       size: Longint;
       S: string;
       y: Integer;
    begin
      if OpenDialog1.Execute then
      begin
        AssignFile(f, OpenDialog1.FileName);//打开文件并将其赋给f
        Reset(f);//因为当上一条语句结束后,他的当前指针已经指向文件尾,所以必须使用此语句将文件的当前指针指到初始位置0
        try
          size := FileSize(f);
          S := 'File size in bytes: ' + IntToStr(size);
          y := 10;
          Canvas.TextOut(5, y, S);
          y := y + Canvas.TextHeight(S) + 5;
          S := 'Seeking halfway into file...';
          Canvas.TextOut(5, y, S);      y := y + Canvas.TextHeight(S) + 5;
          Seek(f, size div 2);//将f的当前指针指向1/2文件大小的位置
          S := 'Position is now ' + IntToStr(FilePos(f));
          Canvas.TextOut(5, y, S);
        finally
          CloseFile(f);
        end;
      end;
    end;
      

  3.   

    好多个seek, 用在不同地方不同的函数