首页 新闻 会员 周边 捐助

C#如何监控文件创建完成后再处理

0
[待解决问题]

用C#的FILESYSTEMWATHER来监控文件夹,由于文件是其他程序输出的,需要些时间,文件大小不同时间长短不同,用SLEEP等待时间不统一会出问题,问问各位这种情况,有没什么办法实现文件完全创建后触发处理?而不是一有文件就处理,因为这时文件还被其他程序占用输出,谢谢

herry507的主页 herry507 | 菜鸟二级 | 园豆:244
提问于:2025-09-13 15:28
< >
分享
所有回答(2)
1

FileShare.None尝试打开文件 有进程在写入的时候 会抛出异常的 ,能打开就是文件已经传输完成了 然后做下一步处理

摸鱼w | 园豆:435 (菜鸟二级) | 2025-09-15 09:28

这也是一个方法,但总不能一直尝试打开

支持(0) 反对(0) herry507 | 园豆:244 (菜鸟二级) | 2025-09-15 13:54

@herry507:你可以写个方法啊 多长时间检测一次 等可以打开 就是结束啊 或者给 上传文件的程序加个回调 传输完成后 回调你C# 程序也行啊

支持(0) 反对(0) 摸鱼w | 园豆:435 (菜鸟二级) | 2025-09-15 14:28
0

这个真的就得sleep,预估一个程序写入需要多久,例如1分钟,等待时长写入配置文件就可以了。
我们采集三方报告是这样处理的

郑延杰 | 园豆:196 (初学一级) | 2025-09-19 11:53
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册