在C中获取当前语言环境的字符集?

时间:2011-10-04 07:30:00

标签: c locale

如何在C中找到当前语言环境的字符集?

setlocale(LC_ALL,NULL)返回“en_US.UTF8”,但有没有办法获取字符集?在我的系统上的/etc/locale.gen中,它列出了语言环境和字符集,因此它不在名称中。

1 个答案:

答案 0 :(得分:6)

您可以使用nl_langinfo(3)函数查询当前区域设置的各种参数。通过调用nl_langinfo(CODESET)获得字符集。

请注意,您必须先致电setlocale,然后才能使用nl_langinfo让您的程序能够识别程序。