Windows Python 2.7+;win 7:如何检测已完成的文件复制过程

Windows Python 2.7+;win 7:如何检测已完成的文件复制过程,windows,python-2.7,Windows,Python 2.7,我编写了一个简单的python脚本来自动检测目录中添加的文件,然后我会对这个新添加的文件做一些事情。我试图解决的一个问题是如何确定文件复制过程是否已完成 1) 如何检测添加到目录中的文件-已解决 2) 如何检测已完成的文件复制过程 一种解决方案是按照下面的帖子中的建议比较大小。但是我尝试了这个方法,我发现它不起作用。当文件仍在复制时(Win7弹出窗口仍显示还剩13分钟),代码段指示文件复制已完成 有人能帮忙检查一下为什么它不起作用吗?是否有更好的方法来检测文件复制过程是否已完成 我自己想出了

我编写了一个简单的python脚本来自动检测目录中添加的文件,然后我会对这个新添加的文件做一些事情。我试图解决的一个问题是如何确定文件复制过程是否已完成

1) 如何检测添加到目录中的文件-已解决

2) 如何检测已完成的文件复制过程

一种解决方案是按照下面的帖子中的建议比较大小。但是我尝试了这个方法,我发现它不起作用。当文件仍在复制时(Win7弹出窗口仍显示还剩13分钟),代码段指示文件复制已完成

有人能帮忙检查一下为什么它不起作用吗?是否有更好的方法来检测文件复制过程是否已完成

我自己想出了下面的解决办法。 我没有检查文件大小,而是尝试打开此文件。如果发现IOError,请休眠2秒,然后重试

如果您有更好的解决方案,请告诉我

result = None
while result is None:
try:
    result = open(logPath)
except IOError:
    time.sleep(2)
result.close()
result = None
while result is None:
try:
    result = open(logPath)
except IOError:
    time.sleep(2)
result.close()