2012-11-10 134 views
0

我每天下载GB的东西。我在一天中得到所有OCD并组织文件和文件夹这么多次,这让我感到非常紧张。如何确定文件是否已完成下载

因此,我计划编写一个应用程序,检测文件何时完成下载(到Windows下载文件夹),然后将其放入相关的分类文件夹中。

例如: 我下载了一个应用程序。当应用程序检测到文件已完成下载时,会将其放入子文件夹应用程序。或者,当我完成下载文档时,文档将被放置在Downloads文件夹的子文件夹内。

我在这里的问题是我不想这样做,除非有确定的方式来告诉文件是否已经完成下载。

事情我已经想到了:

  1. 我曾想过在Downloads文件夹执行FileSystemWatcher的,而当创建有一个新的文件,将其添加到列表中。当FileSystemWatcher检测到文件大小已更改或已被修改时,它将启动一个计时器;这个计时器的目的是确定x秒数量是否下载完成。它通过假设(错误地)假设文件的大小在指定的时间内没有增加,下载完成。

这就是我能想到的。关于如何完成这种事情的任何想法?

+1

某些“下载管理器”工具通过插件模型挂接到浏览器中,并允许您对下载进行基于规则的过滤。 – ravuya

+0

我完全忘记了这些功能,@ravuya。谢谢。 – Arrow

回答

1

文件被访问时被阻止。不是每个文件。但是你可以检查文件是否被另一个应用程序打开。如果文件没有打开 - 这应该告诉你,它已经完全下载。

相关问题