文本文件的问题

雨轩居士 2005-11-04 01:13:58
我想让两个应用程序同时访问一个文本文件或TFileStream类型的文件,不知怎么才能实现.
...全文
183 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
阿呆_ 2005-11-04
  • 打赏
  • 举报
回复
用TFileStream当然可以共享同一个文件,只要指定创建方式为: fmOpenReadWrite or fmShareDenyNone即可,这样创建的filestream可以被多个进程打开并读写, 如果指定fmOpenRead or fmShareDenyNone则可以共享打开文件并只读。

不用FileStream的话可以用文件句柄方式打开(fileopen函数),同样只要指定方式包含fmShareDenyNone就可以共享.

如果对不存在的文件要共享那么必须操作两次,第一次用TFileStream.Create(name, fmCreate)或者FileCreate函数创建文件,然后关闭它(FileStream.Free或者FileClose函数)再用共享方式重新打开即可。
dd_zhouqian 2005-11-04
  • 打赏
  • 举报
回复
替换
雨轩居士 2005-11-04
  • 打赏
  • 举报
回复
txtfile文件可以同时读,但写不知怎么能同步别外我想更改某一行的数据如:
'y','ht','45','fg'
'f','fa','eew','tf'
'f','da','da','fe'
更改第二行'f',为'y',怎么实现
雨轩居士 2005-11-04
  • 打赏
  • 举报
回复
TFileStream我试过,不能同时打开一个这种类型的文件
luxuewei5214 2005-11-04
  • 打赏
  • 举报
回复
hehe,流亡帅哥也来抢分?
同时读应该没问题。
chinasdp 2005-11-04
  • 打赏
  • 举报
回复
用TextFile或者TFileStream,在没有关闭文件或释放流的情况下都是独占的,不能同时访问。
如果是文本文件,可以用Memo读取:Memo1.Lines.LoadFromFile('filename');
ssq237712 2005-11-04
  • 打赏
  • 举报
回复
只读的话应该没什么问题啊。同时写的话,怎么保证同步?

5,386

社区成员

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

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