我想问一下本人做的一个记事本 用的MEMO.lines.readfromfile ,这样读取读取文本文件没有问题,如果本人设置提取的文件是EXE程序或者是一幅图片,他只能读取前几个字符,而不能全部读取,虽然是乱码,系统自带的记事本就可以完全读取,请问有没有什么办法解决,让其能读入这些二进制 之类的文件!
谢谢!

解决方案 »

  1.   

    memo1.Lines.LoadFromStream();
    先把文件读入流
      

  2.   

    Windows的记事本有个编码选择的下拉框,说明它是按照那些编码转化的。
      

  3.   

    招聘       delphi       程序员(人数:2)   
        毕业两年以上   
        两年以上       delphi       工作经验   
        熟悉       sql       server       
        sql       编写能力突出者优先   联系方式:   
        深圳中普达科技有限公司   
        0755       86170837   
        请将简历发至       [email protected]   
        
      

  4.   

    lines.readfromfile 是TstringList 的方法你需用流的方式去读,去解析.(可以先用utraledit打开,看看其格式)
      

  5.   

    TAccessMS=Class(TMemoryStream);Var
      s: String;
      fs: TFileStream;
      mm: TMemoryStream;//创建释放及异常处理略
      SetLength(s,fs.size);
      TAccessMS(mm).SetPointer(PChar(s),fs.size);
      mm.Position := 0;
      mm.Copyfrom(fs,0);  //拷贝全部文件内容
      //这里再加入处理字节值为0的代码,可以将其替换成'0',此处略  //现在S可直接用了
      Memo1.Lines.Text := s;
      
      

  6.   

    记住不能用TStringStream,会出错,速度也慢很多!