4

Perlで1000s_sepを使いたい。次のコードを使用して取得できます

use strict;
use POSIX qw(setlocale locale_h LC_ALL);
setlocale(LC_ALL, "fr_FR");
my $lc=localeconv();
print $lc->{thousands_sep};

その後、ロケールを以前の値に戻したいのですが、を使用する前にロケールを取得する方法がわかりませんsetlocale$ENV{LANG}に設定されて いるものを解析する必要がありen_US.UTF-8ますか?または、ロケール名を取得する他の方法はありますか?

4

1 に答える 1

5

setlocale()2 番目の引数なしで呼び出された場合、現在のロケールを返します。

my $oldlocale = setlocale(LC_ALL);

現在の環境に応じてロケールを設定する場合は、空の文字列 (ie. "") で呼び出します。

于 2013-03-07T14:41:59.033 に答える