用C#的FILESYSTEMWATHER来监控文件夹,由于文件是其他程序输出的,需要些时间,文件大小不同时间长短不同,用SLEEP等待时间不统一会出问题,问问各位这种情况,有没什么办法实现文件完全创建后触发处理?而不是一有文件就处理,因为这时文件还被其他程序占用输出,谢谢
FileShare.None尝试打开文件 有进程在写入的时候 会抛出异常的 ,能打开就是文件已经传输完成了 然后做下一步处理
这也是一个方法,但总不能一直尝试打开
@herry507:你可以写个方法啊 多长时间检测一次 等可以打开 就是结束啊 或者给 上传文件的程序加个回调 传输完成后 回调你C# 程序也行啊
这个真的就得sleep,预估一个程序写入需要多久,例如1分钟,等待时长写入配置文件就可以了。
我们采集三方报告是这样处理的