6
我试图找出最好和最快的方法来判断一个文件是否存在于ftp服务器上。如何判断一个FTP文件是否存在使用ruby?
这是我想出了...
def remote_exists?(idx)
#@file.rewind if @file.eof?
ftp = Net::FTP.new(FTP_SERVER)
ftp.login
begin
ftp.size(idx)
rescue Exception
return false
end
true
end
好像只是捕捉每一个异常是一个坏主意,但我有麻烦了正确的特定异常(一个或多个)。
我也在我的代码中使用OpenURI来实际获取文件。我试图找出是否可能有更好的方法,但我认为它只是使用Net :: FTP。
代码可以询问服务器是否支持大小,但列出文件或特定文件并提取大小应该更通用 - 除了FTP服务器不一定符合其列表的标准。在一个易于解决的专用/一次性使用的环境中。在通用客户端中需要更多的工作。 –