Path::Class::URI(3pm) User Contributed Perl Documentation Path::Class::URI(3pm)

Path::Class::URI - Serializes and deserializes Path::Class objects as file:// URI

  use Path::Class;
  use Path::Class::URI;
  my $file = file('bob', 'john.txt');
  my $uri  = $file->uri; # file:bob/john.txt
  file('', 'tmp', 'bar.txt')->uri; # file:///tmp/bar.txt
  my $file = file_from_uri("file:///tmp/bar.txt"); # or URI::file object
  $fh = $file->open;

Path::Class::URI is an extension to Path::Class to serialize file path from and to file:// form URI objects.

This module encodes and decodes non URI-safe characters using its literal byte encodings. If you call uri methods on Win32 Path::File objects, you'll get local filename encodings.

If you want to avoid that and always use UTF-8 filename encodings in URI, see Path::Class::Unicode bundled in this distribution.

  $uri = $file->uri;
  $uri = $dir->uri;
    

returns URI object representing Path::Class file and directory.

  $file = Path::Class::File->from_uri($uri);
  $dir  = Path::Class::Dir->from_uri($uri);
    

Deserializes URI object (or string) into Path::Class objects.

Shortcuts for those from_uri methods. Exported by default.

Tatsuhiko Miyagawa <miyagawa@cpan.org>

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

Path::Class, URI::file

2023-02-11 perl v5.36.0