新手问题 新手请教 Rails FTP 读取远程文件的方法

sunsonavaj · 2012年05月17日 · 最后由 heliang7 回复于 2012年05月28日 · 5140 次阅读

大家好: 谁能提供一下 rails ftp 读取远程固定文件的用法的例子,让俺学习一下,现在我要通过 ftp 读取服务器固定文件夹下的固定文件 (该文件以日期为文件名:如:good_20120517.txt) 读取内容之后我根据内容进行入库, 现在我涉及到两个问题: 1.怎样通过 ftp 读取远程文件的做法。 2.把该功能放入到 rails 的定时任务执行当中。 对针读取文件录入系统的做法我的做法如下:

begin ```
  IO.readlines().each do |l|
     m = l.chomp
     operate,city_code,provider_id=m.split("|")
     if provider_id.blank?
        good = Good.first :conditions=>"seq=#{provider_id}"
        if good.nil?
          #录入系统
        else
          # 更新数据
        end
     end
   end
end```
我现在要对一样步骤 需要请教的是:
如果以上步骤我读取文件失败了,保存失败了,我要进行第二次读取文件该怎么写。
希望高手指点。谢谢!

童鞋,上个帖子@huacnlee 也说过啦,请把代码贴好点,就算不用 markdown 也可以有点缩进吧。

好了 这样可以了

不好意思了

#3 楼 @sunsonavaj 无语...帖代码,按 M 键看帮助

Net::FTP 可以做读取

兄弟们这下有缩进了吧

各位度对不住了 针对上次排版没有注意导致大家看问题的时候有点乱 我现在改正 希望大家不吝赐教。谢谢!

http://www.ruby-doc.org/stdlib-1.9.3/ 搜索 Net::FTP

Net::FTP.open('ftp.netlab.co.jp', 'user', 'password') do |ftp|
  ftp.login
  files = ftp.chdir('pub/lang/ruby/contrib')
  files = ftp.list('n*')
  ftp.getbinaryfile('nif.rb-0.91.gz', 'nif.gz', 1024)
end 

#8 楼 @heliang7 如果 FTP 的端口不是默认的端口。。好像 Net::FTP 不起作用??

记得以前有人发过一个 gem

#10 楼 @Louis 看下 connect 方法。

需要 登录 后方可回复, 如果你还没有账号请 注册新账号