我想利用SaveTOFile函数去生成一个二进制流文件,把这个二进制文件的扩展名个性化,设为自己喜欢的后缀格式,
同时我下次再LOADFORMFILE又可以将该文件正确读取,
给我个示例或思路.

解决方案 »

  1.   

    用TMemoryStream,直接用SaveToFile和LoadFromFile方法就行了
      

  2.   

    用SaveToFile和LoadFromFile方法就行
      

  3.   

    LoadFromFile 只要文件路径正确(与扩展名无关),就没问题
      

  4.   

    用文件流比较好也可以用文件操作:
    Trec=record 
      x: integer;
      y:single;
      z:array[0..100] of integer;
     end;
    //fname为带扩展名的文件名称
    procedure SaveTOFile(fname:string;rec:Trec);
    var
      mfile: file of trec;
    begin
      assignfile(mfile,FName);
      rewrite(mfile);
      write(mfile,rec);
      closefile(mfile);
    end;function LOADFORMFILE(fname: string): trec;
    var
      mfile: file of trec;
    begin
      assignfile(mfile,FName);
      Reset(mfile);
      read(mfile,result);
      closefile(mfile);
    end;
      

  5.   

    用內存流方法試試(TMemoryStream)
      

  6.   

    用TFileSteam,自定义个文件结构类型就好了,跟扩展名无关...
      

  7.   

    首先,你可以定义你的数据格式type
      TMyRec=Packed Record
        AAA:string[20];
        BBB:integer;
        CCC:TDateTime;
      end;然后,就可以用TFileStream来读取和存储你的特殊格式的文件Procedure MyFileRead;
    Const
      MyFileEx='.ABC'
    var
      MyRec:TmyRec;
      FileName:String;
      nRecLen:Integer;
      MyStream:TFileStream; 
    begin
      nRecLen:=sizeOf(MyRec);

      MyRec.AAA:='Hello';
      MyRec.BBB:=1;
      MyRec.CCC:=Now;
    }
      FileName:='test';
      FileName:=FileName+MyFileEx;
      If not FileExist(FileName) then exit;
      MyStream:=TFileStream.Create(FileName,fmOpenRead);
      MyStream.Read(MyRec,nRecLen);
      MyStream.Free;
    end;