没接触过二进制文件
不知道如何操作
问题如下
1.如何读取二进制文件
2.如何知道二进制的字节数
3.能不能将二进制文件读到一个数组中

解决方案 »

  1.   

    使用MFC的CFile类(VC)
    这种方式类似于使用VB的二进制方式,你要先创建一个CFile对像,并在构造函数中传递两个参数:文件名(带路径),文件操作方式(如,读取,写入,创建新文件等等)。然后,用Seek函数定位到需读写的文件地址,再用Read或者Write读写文件。在此需注意的是,CFile类的文件地址是从0开始的,这与VB不同。以下是例子代码:double dblBuffer;
    CFile filTest( "C:\data.dat", Cfile::modeCreate | Cfile::modeReadWrite | Cfile::shareDenyNone );
    filTest.Seek( 0, Cfile::begin);
    filTest.Read( & dblBuffer, 8);
    dblBuffer = 1.003;
    filTest.Write( & dblBuffer, 8);
    filTest.Close();CFile对象经过一次文件读写操作之后,文件指针会定位到最近一次操作的未尾,如上代码,Write函数将dblBuffer写入的地址是8—15
      

  2.   

    var
      F: File of Byte;
      s,s1: Byte;
    begin
      AssignFIle(F,'C:\aa.dat');
      Reset(F);
      read(F,s);
      s1 := s shr 1;  //这里做你要的操作
      CloseFile(F);
    end;
      

  3.   

    File of Byte是什么东东阿?
      

  4.   

    var
      fileHandle : TFileStream;
      buf : array [0..MAX_LEN] of byte;
      len : longint;
    begin
      if openDialog.Execute then
      begin
        fileHandle := TFileStream.Create (openDialog.FileName,fmOpenRead);
        len := fileHandle.Read (buf,MAX_LEN);
        ...
        fileHandle.Free ();
      end;
    其中len为所读到的字节数。