logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

Path::Class::Unicode - Maps Unicode filenames to local encoding and code pages

Author

       Tatsuhiko Miyagawa <miyagawa@cpan.org>

       mattn

Description

       Path::Class::Unicode is a Path::Class extension to handle Unicode file names by mapping them to local
       encodings when stringified. It maps to UTF-8 for all UNIX systems including Mac OS X and uses Windows
       code page (like cp932 for Japanese) in Win32 systems.

       It's very useful if you store file paths using URI representation like <file://> and uses URI escaped
       UTF-8 characters for non-ASCII characters. See Path::Class::URI for details.

License

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

Name

       Path::Class::Unicode - Maps Unicode filenames to local encoding and code pages

See Also

perl v5.36.0                                       2023-02-11                          Path::Class::Unicode(3pm)

Synopsis

         use Path::Class::Unicode;

         # Use ufile() to create Unicode objects
         my $fn   = "\x{55ed}.txt";
         my $file = ufile("path", $fn);

         my $fh = $file->open;

         my $fn   = "\x{55ed}.txt";
         my $file = ufile("/path", $fn);
         my $uri  = $file->uri;  # file:///path/%E5%97%AD.txt (always utf-8)

         my $fh   = ufile_from_uri($uri)->open;

Todo

       It would be nice if we could proxy filehandles using Win32API::File.

See Also