2011-11-24 70 views

回答

1

请参阅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中的代码,你可以看到它是如何发现使用什么区域来返回它。

+0

这是正确的方法,另请参阅[this](http://unix.stackexchange.com/questions/210602/how-to-determine-if-current-locale-uses-utf-8-encoding)问题。 –

相关问题