在 *nix 系统上,您可以locale -a
获取可用语言环境的列表。
Windows 中的等效命令(或操作)是什么?
我在 Internet 上看到过列表,但其中大多数只是区域设置标签,而不是实际的区域设置名称。另外,并非所有系统都保证安装所有系统,对吗?
请注意,我在这里对“语言环境”的定义是“语言环境字符串”,即 C 语言的第二个参数setlocale()
,它将导致非 NULL 返回值。
编程答案也很好,我只是厌倦了暴力猜测 Windows 语言环境名称。
在 *nix 系统上,您可以locale -a
获取可用语言环境的列表。
Windows 中的等效命令(或操作)是什么?
我在 Internet 上看到过列表,但其中大多数只是区域设置标签,而不是实际的区域设置名称。另外,并非所有系统都保证安装所有系统,对吗?
请注意,我在这里对“语言环境”的定义是“语言环境字符串”,即 C 语言的第二个参数setlocale()
,它将导致非 NULL 返回值。
编程答案也很好,我只是厌倦了暴力猜测 Windows 语言环境名称。
最初,我找不到 C/Win32 API 来获取信息。(见后面的编辑。)但是,看起来 .NET 类System.Globalization.CultureInfo可以提供您需要的信息。特别是,请参阅 CultureInfo.GetCultures()。此页面似乎有您正在寻找的完整示例。
编辑:如果您更喜欢 C/Win32 API,请参阅EnumSystemLocales () 函数。
编辑 2:此示例显示如何将 LCID(您从 EnumSystemLocales() 获得)转换为 setlocale() 可用的字符串。