Я пытаюсь поместить имя файла из строки, но не могу.Используйте строку в filename
Это хорошо работает:
#!/usr/bin/ruby
require 'httpclient'
http2 = HTTPClient.new
response = http2.get_content("http://example.com/version.ini")
response.each_line do | line |
http = HTTPClient.new
my_file = open('file.zip', 'wb')
my_file.write(http.get_content("http://example.com/data.zip"))
end
puts "Done."
Но это не так:
#!/usr/bin/ruby
require 'httpclient'
http2 = HTTPClient.new
response = http2.get_content("http://example.com/version.ini")
response.each_line do | line |
puts line # -> file.zip
http = HTTPClient.new
my_file = open(line, 'wb')
my_file.write(http.get_content("http://example.com/data.zip"))
end
puts "Done."
консоли:
C: /Ruby22-x64/lib/ruby/2.2.0/open -uri.rb: 36: in
initialize': Invalid argument @ rb_sysopen - file.zip (Errno::EINVAL) from C:/Ruby22-x64/lib/ruby/2.2.0/open-uri.rb:36:in
open ' от C: /Ruby22-x64/lib/ruby/2.2.0/open-uri.rb: 36: inopen' from launcher.rb:10:in
блок в' от launcher.rb: 7: ineach_line' from launcher.rb:7:in
'
Try 'my_file = открытый (line.to_s, 'термометра')' –
Что значение 'ставит line.inspect'? –
@axelTetzlaff Не работает. –