08/02/12 18:17:14
require 'open-uri'
uri = URI.parse('URLリンク(gems.rubyforge.org)')
total = 0
count = (0..100).to_a
open(uri,
:content_length_proc => lambda {|n| total = n; puts "#{n}バイトいきます"},
:progress_proc => lambda {|n|
pc = (n.to_f/total*100).to_i
if pc == count.first then
puts "#{pc}%終了"
count.shift
end
}).read
# =====================================
$ ruby ./progress.rb
16047764バイトいきます
0%終了
1%終了
2%終了
3%終了