我有一个代表文件路径的字符串,例如“/home/user/dir1/dir2/dir3/name.ext”。现在我想将其转换为合法的 URI(以“file://”等开头的字符串)。
我如何在 Ruby 中做到这一点?
我有一个代表文件路径的字符串,例如“/home/user/dir1/dir2/dir3/name.ext”。现在我想将其转换为合法的 URI(以“file://”等开头的字符串)。
我如何在 Ruby 中做到这一点?
require 'uri'
uri = URI.join('file:///', '/home/user/dir1/dir2/dir3/name.ext')
=> #<URI::Generic:0x0000000263fcc0 URL:file:/home/user/dir1/dir2/dir3/name.ext>
uri.scheme
=> "file"
uri.path
=> "/home/user/dir1/dir2/dir3/name.ext"
uri.to_s
=> "file:/home/user/dir1/dir2/dir3/name.ext"
由于 Ruby 2.6.3 使用可以使用URI::File
path = '/somewhere/on/your/drive'
URI::File.build([nil, path])