XCopy - 仅抓取完全上传的文件

时间:2009-01-26 22:03:08

标签: c# xcopy

我有一个自动化作业,它使用xcopy通过面向客户的网站提取上传到我们服务器的文件。

有没有办法只提取完全上传的文件?

我考虑创建第二个“inProcess”文件夹,该文件夹将用于上传,然后在完全上传后移动这些文件,但是当文件转换为“完成”文件夹时,仍会创建一个时间窗口。 ..

有什么想法吗?

2 个答案:

答案 0 :(得分:2)

使用.filepart扩展名作为临时文件。

这可能是最简单明了的做法。

WinSCP会这样做。

答案 1 :(得分:1)

你可以上传文件的MD5哈希,然后上传文件,如果上传的文件与MD5不匹配,那么它还没有完成(或者如果需要很长时间,也许它没有正确上传)

MD5通常用于通过创建表示文件的哈希来检查文件的完整性。如果文件完全不同,它几乎总是(因为,基本上永远不会出于我们的目的)生成不同的MD5哈希。文件与先前上传的MD5哈希不匹配的唯一原因是它是否未完成或者MD5 /文件在上传时已损坏。

还有this.,但它是perl,来自专家交流(ick)