質問: Rubyでopen-uriを使って画像ファイルの取得を行おうとした場合、 読み込み元のURLと同じファイル名で(今回はexample.jpg)保存するには "????.jpg"の部分を何と記述すればよいのでしょうか? require "open-uri" open("http://exmple.com/example.jpg") { |image| File.open("????.jpg","wb") do |file| file.puts image.read end }
回答: URLのパス部分は、`URI.parse(~).path`で得られます。 パスのファイル名部分は、`File.basename(~)`で得られます。 ``` require "uri" x = "http://exmple.com/example.jpg" y = File.basename(URI.parse(x).path) p y #=> "example.jpg" ```