7
Cで現在のロケールの文字セットを見つける方法はありますか?Cで現在のロケールの文字セットを取得していますか?
setlocale(LC_ALL、NULL)は "en_US.UTF8"を返しますが、文字セットを取得する方法はありますか?私のシステム上の/etc/locale.genには、ロケールと文字セットがリストされているので、名前にはありません。
Cで現在のロケールの文字セットを見つける方法はありますか?Cで現在のロケールの文字セットを取得していますか?
setlocale(LC_ALL、NULL)は "en_US.UTF8"を返しますが、文字セットを取得する方法はありますか?私のシステム上の/etc/locale.genには、ロケールと文字セットがリストされているので、名前にはありません。
nl_langinfo
(3)機能を使用して、現在のロケールのさまざまなパラメータを照会できます。文字セットはnl_langinfo(CODESET)
を呼び出して取得します。
nl_langinfo
を使用する前にsetlocale
に電話をかけて、プログラムをロケールに対応させる必要があります。
Windowsでこれを行う方法を知っていますか? – Jookia
@Jookia:私はUNICODEを定義し、Windowsのすべてのために 'wchar_t' APIを使うと言うでしょう。 MSDNのクイック検索では、エンコードを取得するための '_getmbcp'関数を探していますが(Windowsではエンコードの数値コードを使用しています)、レガシーテキストファイルの解釈にのみ使用します。 –
wchar_t APIはUTF-16なので、WindowsでUTF-16テキストを投げるだけでいいと思いますか? – Jookia