从WP应用程序的项目文件夹中访问文件
本文关键字:文件夹 访问 文件 项目文件 项目 WP 应用程序 | 更新日期: 2023-09-27 17:53:32
我是Windows Phone开发的新手,我正在尝试做一个简单的培训应用程序。
我想让我的应用程序加载一些音频文件,我已经放入一个文件夹内的项目。
下面是一个简短的片段:
private void LoadSound(String SoundFilePath, out SoundEffect Sound)
{
// For error checking, assume we'll fail to load the file.
Sound = null;
try
{
// Holds informations about a file stream.
StreamResourceInfo SoundFileInfo = Application.GetResourceStream(new Uri(SoundFilePath, UriKind.Relative));
文件夹结构类似于
- Project
- Kits
- TestKit_128
- Bass_126.wav
和呼叫
Button.setSound("Kits''TestKit_128''bass_126.wav");
抛出一个System.NullReferenceException
,因为在创建URI时没有找到路径。(至少我是这么认为的!)
我该怎么办?
是否有任何方法从项目中的文件夹加载文件或将它们复制到IsolatedStorage当我第一次运行应用程序?
感谢编辑:我刚刚用WinRar打开了XAP文件,没有"Kits"文件夹,所以我想我的问题是如何将文件夹添加到XAP文件
我认为你必须将文件夹和文件添加到你的项目中(我假设你正在使用Visual Studio)。尝试右键单击您的解决方案并添加一个现有对象(在本例中为wav文件)。
您是否将wav文件的构建操作设置为"Content"?右键单击WAV文件-> properties -> build action == content。
试试这个:
Uri uri = new Uri("Kits/TestKit_128/bass_126.wav", UriKind.Relative);//Above the Kits folder only the project itself.
StreamResourceInfo sr = Application.GetResourceStream(uri);
try
{
using (Stream stream = sr.Stream)
{
//working here with your data image or wav or whatever you want from URI
}
}
catch (Exception)
{
}
这是项目内部的资源,对我来说很好。另外,之前关于"内容"的注意事项是正确的,没有它就无法工作。我认为问题出在地址的双斜杠上。