怎么判断FTP上传的文件是否已上传完毕? ( 积分: 100 )

  • 主题发起人 主题发起人 jlxbz
  • 开始时间 开始时间
J

jlxbz

Unregistered / Unconfirmed
GUEST, unregistred user!
1、正在开发一个用FTP上传下载的程序,程序中有两个定时器。一个定时器负责不断监测本地的一个目录中是否有文件,有则上传到远程FTP的指定目录下。一个定时器负责不断监测远程FTP的指定目录中是否有文件,有则下载到本地的目录中。

2、此程序会在多个机器中运行,问题出现了。一个机器上的程序正在上传一个大的文件,
另一个一机器上的程序发现FTP目录上有文件就会马上下载,也不知道此文件是否上传完成了,就出现了一个机器文件未传完,而另一个机器确只下载了几K的情况。

问题就是怎么判断FTP服务器中一个目录上的文件是否已上传完毕,可以下载了?
 
1、正在开发一个用FTP上传下载的程序,程序中有两个定时器。一个定时器负责不断监测本地的一个目录中是否有文件,有则上传到远程FTP的指定目录下。一个定时器负责不断监测远程FTP的指定目录中是否有文件,有则下载到本地的目录中。

2、此程序会在多个机器中运行,问题出现了。一个机器上的程序正在上传一个大的文件,
另一个一机器上的程序发现FTP目录上有文件就会马上下载,也不知道此文件是否上传完成了,就出现了一个机器文件未传完,而另一个机器确只下载了几K的情况。

问题就是怎么判断FTP服务器中一个目录上的文件是否已上传完毕,可以下载了?
 
在上传的时候顺便传一个INI,这个INI记录这个文件的大小,在下载的时候检查这个文件大小对不对头,不对头就不下载
 
没上传完成的文件给个在原文件名后面附加个特别的扩展名,上传完成之后,再更改文件名为原名称。下载部分下载时忽略这些具有特别扩展名的文件。
 
自己写服务器端,在上传文件过程中,用独占方式打开,这样凡是请求下载的时候都会抛出一个异常,文件再未上传完毕的时候是下载不了的:)这方法最简单。
 
接受答案了.
 
后退
顶部