我已将 Build Action 设置为内容的项目中包含这些文件:
\Resources\Myfolder\Myfiles-de-DE.zip
\Resources\Myfolder\Myfiles-en-US.zip
\Resources\Myfolder\Myfiles-sv-SV.zip
\Resources\Myfolder\Myfiles-fr-FR.zip
在我的 Package.appxmanifest 中,我试过这个[当"打开..." " XML(文本)编辑器"]:
<Resources>
<!-- First = Default -->
<Resource Language="en-US" />
<Resource Language="sv-SV" />
<Resource Language="de-DE" />
<Resource Language="fr-FR" />
</Resources>
和此:
<Resources>
<Resource Language="x-generate" />
</Resources>
在代码中我试图访问这样的文件:
Dim ZipPath As String = "Resources\Myfolder\Myfiles-.zip"
Dim fs As System.IO.Stream = Await _
Windows.ApplicationModel.Package.Current.InstalledLocation.OpenStreamForReadAsync(ZipPath)
但我只得到一个FileNotFoundException!我做错了什么?
PS:如果我将代码更改为此文件,则加载文件:
Dim ZipPath As String = "Resources\Myfolder\Myfiles-en-US.zip"
答案 0 :(得分:1)
目前还不完全清楚你要完成什么。但代码应抛出该异常,除非您默认加载Resources\Myfolder\Myfiles-.zip
文件。
我猜你想要根据他们喜欢的语言加载特定的zip文件,但是你的代码中的任何地方都没有尝试获取他们的语言。
您可以尝试LocalizedStrings
:How to build a localized app for Windows Phone 8
或者您可以获得他们喜欢的语言并将其附加到您拥有的ZipPath
string ZipPath = "Resources\Myfolder\Myfiles-" + culture_extention + ".zip";
其中culture_extention为Windows.System.UserProfile.GlobalizationPreferences.Languages[0]