我的程序是不断的往TEST。DAT文件里写入数据 用流操作  记住是不断的打开文件 写入文件 关闭文件 几乎是 6次/秒datStream := TStream.Create(ExtractFilePath(Application.EXEName)+'data\test.dat', fmOpenWrite)但是 只要你对data文件夹下的test.dat文件哪怕是点一下鼠标 程序也会出现异常 说无法打开data\test.dat  我怀疑是打开模式的问题 如果把fmOpenWrite换成别的 换成什么呢???还有就是捕捉那个异常  高人帮帮忙吧

解决方案 »

  1.   

    这当然是不行的
    因为只有你free以后才能法打开data\test.dat,要不一定会出错
      

  2.   

    用FileStream
    datStream:=TFileStream.Create(ExtractFilePath(Application.EXEName)+'data\test.dat', fmOpenReadWrite or fmShareDenyNone);
      

  3.   

    用FileStream, 
    写完,flush 一下就可了,不用关闭
      

  4.   

    你可以用TMemoryStream缓存数据,
    等写到一定程度后在写入文件,
    你如此频繁的读写文件太浪费资源了
      

  5.   

    meiqingsong(阿飛):你好  给个例子 好吗?aiirii(ari-淘金坑) :FLUSH什么意思??hellolongbin(一个人[.net学习中……]) :我要从一个监控的下位机 提取数据 显示成为波形 并存储 firstshine(黑里透红) :谢谢你 你的主义 我测试了  接收的数据并没有减少  :)