如何使用C#将文件从远程Windows机器复制到另一台Windows机器?

时间:2015-04-16 19:34:16

标签: c#

我有一个文件夹,通过文件模拟器连续创建日志文件。完成每个文件的创建后,后台Windows服务即FolderWatcher,应将每个文件复制到中央Windows服务器。

我使用File.Copy()将文件从一台机器传输到另一台机器。问题是我的后台Windows服务无法知道要复制的文件是否仍在使用中。

有没有办法知道该文件仍在使用中?我知道如果我们尝试打开正在使用的文件,它将抛出异常。

2 个答案:

答案 0 :(得分:2)

抓住异常并将文件放入文件列表中,然后再次尝试'在以后的时间。

答案 1 :(得分:0)

我会先检查文件是否正在使用,如果是,请将其添加到定期检查的队列中,并在文件空闲时移动该文件。

请参阅this stackoverflow question以确定如何查看文件是否已打开。