关于读取TXT

ashfish 2010-06-02 09:49:47
我想用DELPHI读取一个文本文件进行分析,只读取,这是个游戏的日志文件,实时更新
我尝试用AssignFile 和memo.loadfromfile 都不行,会提示另外一个程序正在使用此文件, 而我在系统里直接打开这个文件却是可以打开的。

请问要如何用DELPHI读取这个实时更新的文本文件?怎么写代码, 万分感谢。

...全文
141 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
ashfish 2010-06-04
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 supertitan002 的回复:]
你试试用TFileStream.Create(FileName, fmOpenRead)这种方式打开试试
[/Quote]

感谢啊,已经找到方法了,问题不是出在fmShareDenyWrite,而是fmOpenRead 哈。我把MODE定义为fmShareDenyNone 就可以了。
ashfish 2010-06-04
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 supertitan002 的回复:]
你试试用TFileStream.Create(FileName, fmOpenRead)这种方式打开试试
[/Quote]


很感谢你的思路,我试了一下,还是提示正在被使用,杯具啊
SuperTitan002 2010-06-03
  • 打赏
  • 举报
回复
你试试用TFileStream.Create(FileName, fmOpenRead)这种方式打开试试
wbaige 2010-06-03
  • 打赏
  • 举报
回复
每天回帖即可获得10分可用分!
ashfish 2010-06-02
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 supertitan002 的回复:]
你查下loadfromfile的源代码

Stream := TFileStream.Create(FileName, fmOpenRead or fmShareDenyWrite);

打开文件用了fmShareDenyWrite,所以无法打开

没看到你的assignfile后用的什么,如果reset应该问题不大,呵呵
[/Quote]


就是用RESET 也不行,好纠结啊
ashfish 2010-06-02
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 hongss 的回复:]
引用 2 楼 lgtao 的回复:
实在不行就复制一份文件后再读嘛!



这个主意不错,Copy一份,然后拿来分析。
[/Quote]


关键是日志文件比较的大,而且不不止分析一次。
hongss 2010-06-02
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 lgtao 的回复:]
实在不行就复制一份文件后再读嘛!
[/Quote]


这个主意不错,Copy一份,然后拿来分析。
SuperTitan002 2010-06-02
  • 打赏
  • 举报
回复
你查下loadfromfile的源代码

Stream := TFileStream.Create(FileName, fmOpenRead or fmShareDenyWrite);

打开文件用了fmShareDenyWrite,所以无法打开

没看到你的assignfile后用的什么,如果reset应该问题不大,呵呵
ashfish 2010-06-02
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 supertitan002 的回复:]
没看到memo有loadfromfile
用只读方式打开应该是没有问题的
[/Quote]

是memo.line.loadfromfile,反正loadfromfile是不行的。 正在纠结呢,望高手解答。
雪碧爱可乐 2010-06-02
  • 打赏
  • 举报
回复
实在不行就复制一份文件后再读嘛!
SuperTitan002 2010-06-02
  • 打赏
  • 举报
回复
没看到memo有loadfromfile
用只读方式打开应该是没有问题的

5,379

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧