如何在 UWP 应用的字符串文件夹中列出支持的语言

Posted

技术标签:

【中文标题】如何在 UWP 应用的字符串文件夹中列出支持的语言【英文标题】:How to list supported language in Strings folder in a UWP app 【发布时间】:2016-11-26 04:46:36 【问题描述】:

我需要在运行时在 UWP 应用中切换 UI 语言。我想在“字符串”文件夹中显示所有本地化的语言。

例如,我在“Strings”文件夹中添加了“en-US”、“zh-CN”和“ja-JP”资源,所以应用应该支持英文、中文和日文。

但我想以编程方式获取在“字符串”文件夹中添加了多少种语言的列表。因此,当我添加一种新语言时,我无需更改代码。

【问题讨论】:

一种方法是使用 StorageFolder 访问应用程序中的 Strings 文件夹,并使用 GetFoldersAsync() 调用来获取所有文件夹并使用 DisplayName 属性检查它们的名称。不确定这是否是最好的方法 @AbsoluteSith,不,资源文件会自动编译成resources.pri文件,安装位置根本不会有这样的文件夹。 Strings文件夹和那些资源文件不能使用StorageFolder访问。 @GraceFeng-MSFT :是的,你是对的,我的方法行不通。 【参考方案1】:

您可以通过调用获取您的应用支持的所有语言代码的列表:

Windows.Globalization.ApplicationLanguages.ManifestLanguages

此方法返回一个 IReadOnlyList<string>,其中包含您已包含在项目中的所有语言。

【讨论】:

以上是关于如何在 UWP 应用的字符串文件夹中列出支持的语言的主要内容,如果未能解决你的问题,请参考以下文章

在Windows 10 UWP WinJS应用程序中,如何确定构建中包含哪些文件?

为 UWP 应用加载不同语言的不同文本文件的最佳方式是啥?

如何从excel创建本地化资源文件?在 UWP 中

如何在 UWP 的应用中打开另一个应用

如何在 UWP 应用的 XAML Webview 中添加对 HTML5 通知的支持?

在UWP中打印原始数据