Obtains the character set for the current locale;
you might use this character set as an argument to g_convert(), to convert
from the current locale's encoding to some other encoding. (Frequently
g_locale_to_utf8() and g_locale_from_utf8() are nice shortcuts, though.)
On Windows the character set returned by this function is the
so-called system default ANSI code-page. That is the character set
used by the "narrow" versions of C library and Win32 functions that
handle file names. It might be different from the character set
used by the C library's current locale.
On Linux, the character set is found by consulting nl_langinfo() if
available. If not, the environment variables LC_ALL, LC_CTYPE, LANG
and CHARSET are queried in order. nl_langinfo() returns the C locale if
no locale has been loaded by setlocale().
The return value is true if the locale's encoding is UTF-8, in that
case you can perhaps avoid calling g_convert().
The string returned in charset is not allocated, and should not be
freed.
Obtains the character set for the current locale; you might use this character set as an argument to
g_convert(), to convert from the current locale's encoding to some other encoding. (Frequentlyg_locale_to_utf8()andg_locale_from_utf8()are nice shortcuts, though.)On Windows the character set returned by this function is the so-called system default ANSI code-page. That is the character set used by the "narrow" versions of C library and Win32 functions that handle file names. It might be different from the character set used by the C library's current locale.
On Linux, the character set is found by consulting
nl_langinfo()if available. If not, the environment variablesLC_ALL,LC_CTYPE,LANGandCHARSETare queried in order.nl_langinfo()returns the C locale if no locale has been loaded bysetlocale().The return value is
trueif the locale's encoding is UTF-8, in that case you can perhaps avoid callingg_convert().The string returned in
charsetis not allocated, and should not be freed.