Perl Unicode 美食菜谱:将 @ARGV 解码为本地编码

℞ 14:将程序参数解码为本地编码

虽然在现代操作系统中,命令行参数通常以 UTF-8 编码,但 @ARGV 可能使用其他编码。如果您已将系统配置为适当的区域设置,您可能需要适当解码 @ARGV。与 自动 UTF-8 @ARGV 解码 不同,您必须手动进行此操作。

从 CPAN 安装 Encode::Locale 模块

    # cpan -i Encode::Locale
    use Encode qw(locale);
    use Encode::Locale;

    # use "locale" as an arg to encode/decode
    @ARGV = map { decode(locale => $_, 1) } @ARGV;

上一页:℞ 13:将 @ARGV 解码为 UTF-8

系列索引:标准序言

下一页:℞ 15:将标准文件句柄解码为 UTF-8

标签

反馈

这篇文章有问题吗?请在 GitHub 上打开一个问题或拉取请求以帮助我们。