社区
C#
帖子详情
我的程序与别人的程序(我无法控制)之间,如何同时读写文件而不冲突?
hslow
2008-07-16 11:47:04
别人的程序对文件进行定时写操作,大概5秒写一次,写完会关闭文件。我的程序对该文件进行读操作,读完也会关闭文件。
我想问:在我打开文件前,如何判断别人程序正在对文件进行写操作,从而推迟打开以避免冲突??难道不停尝试打开该文件直到成功为止??
请赐教!
...全文
86
5
打赏
收藏
我的程序与别人的程序(我无法控制)之间,如何同时读写文件而不冲突?
别人的程序对文件进行定时写操作,大概5秒写一次,写完会关闭文件。我的程序对该文件进行读操作,读完也会关闭文件。 我想问:在我打开文件前,如何判断别人程序正在对文件进行写操作,从而推迟打开以避免冲突??难道不停尝试打开该文件直到成功为止?? 请赐教!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
nextsea
2008-07-17
打赏
举报
回复
用文件监视器.
private static void FileWatch()
{
FileSystemWatcher watcher = new FileSystemWatcher();
watcher.Path = System.Environment.CurrentDirectory; //路径
watcher.NotifyFilter = NotifyFilters.LastWrite; //监视方式,这里选择的是最后一次写入
watcher.Filter = "要监视的文件.txt";
watcher.Changed += new FileSystemEventHandler(watcher_Changed); //触发事件
watcher.EnableRaisingEvents = true;
}
static void watcher_Changed(object sender, FileSystemEventArgs e)
{
//写入读操作
}
rangeon
2008-07-17
打赏
举报
回复
好像也只有 try and try
bwangel
2008-07-17
打赏
举报
回复
用Timer控件,每隔一段时间(比如0.5秒)在后台轮询一次文件的状态,同时还可以做别的工作.
如果文件打开对程序继续运行是必要的条件,那就只有等啰,不过应该不会等多久的.写文件只是一瞬间的事.
hslow
2008-07-17
打赏
举报
回复
谢谢楼上各位
发表于
2008-07-17
打赏
举报
回复
[Quote=引用 3 楼 nextsea 的回复:]
用文件监视器.
private static void FileWatch()
{
FileSystemWatcher watcher = new FileSystemWatcher();
watcher.Path = System.Environment.CurrentDirectory; //路径
watcher.NotifyFilter = NotifyFilters.LastWrite; //监视方式,这里选择的是最后一次写入
watcher.Filter = "要监视的文件.txt";
watcher.Changed += new …
[/Quote]
自己保存后也会触发事件
STM32
文件
系统 SD卡U盘等
读写
程序
STM32
文件
系统 SD卡U盘等
读写
程序
可向SD卡中读取写入
文件
数据。txt MP3 等
linux字符驱动
程序
读写
IO端口含makefile和测试
程序
含驱动源码、makefile
文件
、测试
程序
源码、实现内容说明四部分 要写驱动
程序
读写
IO端口的 可以参考下
非接触式ic卡
读写
程序
非接触式ic卡
读写
程序
用多线程实现串口
读写
数据以及
文件
的
读写
适合的读者:初学用多线程实现对串口的异步操作,对线程的理解,以及对串口的
读写
。还有
文件
的
读写
都有最基本的使用方式。调试时,可以用串口调试助手一起结合的去学习~
程序
设计基于
文件
操作的输入输出机制解析:C语言标准IO函数在数据流控制中的应用研究
内容概要:本文从
程序
的视角深入解析了
文件
操作的核心机制,重点阐述了输入输出的数据流向与函数使用规则。
程序
通过函数接收外部数据并存入内存,数据来源包括键盘、
文件
和内存,输出目标则为屏幕、
文件
或内存。文中详细区分了以“f”开头的
文件
操作函数(如fscanf、fprintf、fgetc、fputc等)与以“s”开头的内存操作函数(如sscanf、sprintf),强调前者用于
文件
/屏幕与内存
之间
的数据交换,后者仅限内存间操作。同时讲解了
文件
光标的概念及其控制函数fseek、ftell、rewind的作用,并指出fflush在
读写
切换时的重要性,确保数据正确写入或避免操作
冲突
。; 适合人群:具备C语言基础,正在学习系统级编程或
文件
操作的初学者及中级开发者;尤其适合对标准I/O库函数使用存在困惑的
程序
员。; 使用场景及目标:①理解
程序
中输入输出的本质与数据流动路径;②掌握常见
文件
操作函数的参数顺序与使用规范;③熟悉
文件
光标管理与
读写
模式切换时的注意事项,提升
文件
读写
程序
的健壮性与正确性; 阅读建议:学习时应结合代码实践,重点关注各类函数的参数顺序差异及fflush的应用时机,通过调试观察光标变化与缓冲区行为,加深对
文件
操作底层逻辑的理解。
C#
111,120
社区成员
642,537
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章