3
如何获得当前平台使用的默认编码? CPAN中是否有可用的模块或Perl本身的分布? 我找不到perl.org中的解决方案如何在perl脚本中获取当前操作系统的默认编码
如何获得当前平台使用的默认编码? CPAN中是否有可用的模块或Perl本身的分布? 我找不到perl.org中的解决方案如何在perl脚本中获取当前操作系统的默认编码
请参阅I18N :: Langinfo。
$ LANG=en_US.UTF-8 perl -MI18N::Langinfo=langinfo,CODESET -E 'say langinfo(CODESET())'
UTF-8
$ LANG=C perl -MI18N::Langinfo=langinfo,CODESET -E 'say langinfo(CODESET())'
ANSI_X3.4-1968
$ LANG=ja_JP.eucjp perl -MI18N::Langinfo=langinfo,CODESET -E 'say langinfo(CODESET())'
EUC-JP
这可能是你在找什么。如果你按照I18N :: Langinfo中的代码,你可以看到它是如何发现使用什么区域来返回它。
这是正确的方法,另请参阅[this](http://unix.stackexchange.com/questions/210602/how-to-determine-if-current-locale-uses-utf-8-encoding)问题。 –
什么编码?文件系统名称?控制台流? – daxim