Skip to content
class method

URI::File.build

(::Array[::String] args) -> ::URI::File
({ host: ::String?, path: ::String? }) -> ::URI::File
build(args)

Description

Creates a new URI::File object from components, with syntax checking.

The components accepted are host and path.

The components should be provided either as an Array, or as a Hash with keys formed by preceding the component names with a colon.

If an Array is used, the components must be passed in the order [host, path].

A path from e.g. the File class should be escaped before being passed.

Examples:

Example
require 'uri'

uri1 = URI::File.build(['host.example.com', '/path/file.zip'])
uri1.to_s  # => "file://host.example.com/path/file.zip"

uri2 = URI::File.build({:host => 'host.example.com',
  :path => '/ruby/src'})
uri2.to_s  # => "file://host.example.com/ruby/src"

uri3 = URI::File.build({:path => URI::RFC2396_PARSER.escape('/path/my file.txt')})
uri3.to_s  # => "file:///path/my%20file.txt"
See also #check_password #check_user also in 4.1 · 3.4 · 3.3 · 3.2 · 3.1 · 3.0