如何在C中找到当前语言环境的字符集?
setlocale(LC_ALL,NULL)返回“en_US.UTF8”,但有没有办法获取字符集?在我的系统上的/etc/locale.gen中,它列出了语言环境和字符集,因此它不在名称中。
答案 0 :(得分:6)
您可以使用nl_langinfo
(3)函数查询当前区域设置的各种参数。通过调用nl_langinfo(CODESET)
获得字符集。
请注意,您必须先致电setlocale
,然后才能使用nl_langinfo
让您的程序能够识别程序。