Windows 8 metro应用程序将现有图像转换为byte[]
本文关键字:转换 byte 图像 metro 应用程序 Windows | 更新日期: 2023-09-27 18:04:15
我试图将现有的图像(在我的应用程序中的按钮内)保存到byte[],然后将其保存到SQLite数据库。我知道如何使用FileOpenPicker
加载并转换为IRandomAccessStream
,我知道如何保存到数据库,但我无法计算我们如何将现有图像转换为metro应用程序/windows UI中的字节数组。
我已经搜索了很多,但发现主要的例子与FileOpenPicker或使用内存流似乎不与地铁应用程序工作。
谢谢。
可以使用Datareader
作为
var file = await new FileOpenPicker().PickSingleFileAsync();
var fStream = await file.OpenAsync(FileAccessMode.Read);
var reader = new DataReader(fStream.GetInputStreamAt(0));
var bytes = new byte[fStream.Size];
await reader.LoadAsync((uint)fStream.Size);
reader.ReadBytes(bytes);
最后您可以将bytes
保存到数据库。
再举一个例子,用c#将StorageFile读入字节数组
添加编辑
WinRT你需要使用http://writeablebitmapex.codeplex.com/
WinRT将图像加载到字节数组
引用。
基本上你需要加载图像到WriteableBitmap,然后通过调用PixelBuffer.AsStream()来访问像素缓冲区。