如题,包括显示、一个一个字节的读出、写入。

解决方案 »

  1.   

    var
      i,k,j:Longint;
      IniF:TIniFile;
      str:string;
     
    var
    GB: array[0..1024000] of byte;
    FileNam:TFileName;
     TF: file of byte;//记录文件变量
     
    FileNam:=ExtractFileName(str);//获取文件名
    AssignFile(TF,FileNam); 
    size := FileSize(TF); for i:= 0 to size-16 do
      begin
        Seek(TF,i);  //定位
        Read(TF,GB[i]);
      end;
    写入用write
      

  2.   

    var
      i,k,j:Longint;
      str:string;
     
    var
    GB: array[0..1024000] of byte;
    FileNam:TFileName;
     TF: file of byte;//记录文件变量
     
    FileNam:=ExtractFileName(str);//获取文件名
    AssignFile(TF,FileNam); 
    size := FileSize(TF); for i:= 0 to size do
      begin
        Seek(TF,i);  //定位
        Read(TF,GB[i]);
      end;
    写入用write
      

  3.   


    //写入时,每行16个字节
     i:=0;
        for j:=0 to Row do
        begin
          Write(TFil,GB[i+0],GB[i+1],GB[i+2],GB[i+3],
                     GB[i+4],GB[i+5],GB[i+6],GB[i+7],
                     GB[i+8],GB[i+9],GB[i+10],GB[i+11],
                     GB[i+12],GB[i+13],GB[i+14],GB[i+15]);
          i:=i+16;
        end;
      

  4.   

    我用过上面的方法,但是都莫名其妙的在 “size := FileSize(TF)”的地方过不去,说我的变量越界,我将size改成in64,也是如此。我的二进制文件有128K。不知到为什么,请高手指教。如果回复,马上给分。
      

  5.   

    size定义为 Longint  试试