C# 从目录加载WP 8应用程序中的图像文件
我正在开发一个WP 8应用程序,我想加载一个当前在我的计算机驱动器上的映像。这是我的密码C# 从目录加载WP 8应用程序中的图像文件,c#,windows-phone-8,loading-image,C#,Windows Phone 8,Loading Image,我正在开发一个WP 8应用程序,我想加载一个当前在我的计算机驱动器上的映像。这是我的密码 try { using (FileStream fileStream = File.OpenRead("\\TiltFilter\\FilterEffects\\Assets\\AlignmentGrid.png")) { MemoryStream memStream = new MemoryStream(
try
{
using (FileStream fileStream = File.OpenRead("\\TiltFilter\\FilterEffects\\Assets\\AlignmentGrid.png"))
{
MemoryStream memStream = new MemoryStream();
memStream.SetLength(fileStream.Length);
fileStream.Read(memStream.GetBuffer(), 0, (int)fileStream.Length);
}
}
catch (Exception e)
{
string str = e.Message;
}
这给了我这种类型的例外
System.Io.DirectoryNotFoundexception,消息为无法
找到路径的一部分
'C:\TiltFilter\FilterEffects\Assets\AlignmentGrid.png'
有人能帮我在WP8上加载memorystream中的图像吗
谢谢手机不了解UNC网络路径-它不支持Windows文件服务器使用的SMB协议
您需要对文件进行打包,使其成为应用程序包(.xap文件)的一部分并位于手机本地,或者使用Web服务器(即使用http://protocol)提供资产
第一个选项显然是最健壮的,因为它不需要手机与服务器建立网络连接
有关如何执行此操作的示例,请参阅以了解打包“内容”和“资源”文件之间的区别(它提到XML文件,但概念对于任何文件类型都是相同的)。手机不了解UNC网络路径-它不支持Windows文件服务器使用的SMB协议
您需要对文件进行打包,使其成为应用程序包(.xap文件)的一部分并位于手机本地,或者使用Web服务器(即使用http://protocol)提供资产
第一个选项显然是最健壮的,因为它不需要手机与服务器建立网络连接
有关如何执行此操作的示例,请参阅以了解打包“内容”和“资源”文件之间的区别(它提到了XML文件,但概念对于任何文件类型都是相同的)。您需要将图像作为内容添加到项目中,并使用GetResourceStream
访问图像流:
var resource = App.GetResourceStream(new Uri("Assets/AlignmentGrid.png", UriKind.Relative));
var buffer = new byte[resource.Stream.Length];
resource.Stream.Read(buffer, 0, buffer.Length);
您需要将图像作为Content
添加到项目中,并使用GetResourceStream
访问图像流:
var resource = App.GetResourceStream(new Uri("Assets/AlignmentGrid.png", UriKind.Relative));
var buffer = new byte[resource.Stream.Length];
resource.Stream.Read(buffer, 0, buffer.Length);
Windows phone应用程序只能访问它自己的和SD卡
如果您想在Pc和手机之间共享文件,可以使用Web服务。Windows Phone应用程序只能访问它自己的和SD卡
如果您想在Pc和手机之间共享文件,可以使用Web服务。是的,没错。因此,如何从wp8应用程序中的资产文件夹加载图像,我的建议与Paul在下面的建议相同。您甚至可以将其作为项目内容文件的一部分,以便在每次部署应用程序时自动对其进行复制。如果这是一次性操作,手动复制可能要快得多。是的,没错。因此,如何从wp8应用程序中的资产文件夹加载图像,我的建议与Paul在下面的建议相同。您甚至可以将其作为项目内容文件的一部分,以便在每次部署应用程序时自动对其进行复制。如果这是一次性操作,手动复制可能会快得多。还可以将Vs studio中图像的属性更改为内容。并将“复制到输出目录”的属性设置为“更新时复制”。谢谢!这有助于我将应用程序加载中的本地文本文件复制到MemoryStream。MemoryStream ms=新的MemoryStream();resource.Stream.CopyTo(ms);我一直挂断电话,因为在构建之前我没有将文本文件属性设置为“内容”。同时将Vs studio中图像的属性更改为“内容”。并将“复制到输出目录”的属性设置为“更新时复制”。谢谢!这有助于我将应用程序加载中的本地文本文件复制到MemoryStream。MemoryStream ms=新的MemoryStream();resource.Stream.CopyTo(ms);我一直挂断,因为在构建之前我没有将文本文件属性设置为“Content”。