BitmapImage
을 byte[]
으로 변환해야이 데이터를 SQLite 데이터베이스에 저장할 수 있으며 반대로로드 할 수 있습니다.UWP에서 BitmapImage를 변환하여 sqlite에 삽입
<Image x:Name="image" HorizontalAlignment="Left" Height="254" Margin="50,117,0,0" VerticalAlignment="Top" Width="244" Source="Assets/LockScreenLogo.png"/>
내 C# 코드 :이 작동하지 않습니다
public sealed partial class MainPage : Page
{
public MainPage()
{
this.InitializeComponent();
BitmapImage test = new BitmapImage();
test = (BitmapImage)image.Source;
image.Source = test;
byte[] array = ImageToByte(test);
Database.CreateDB();
Database.InsertData(array);
}
#region convert
public byte[] ImageToByte(BitmapImage image)
{
//WriteableBitmap wb;
using (InMemoryRandomAccessStream ms = new InMemoryRandomAccessStream())
{
image.SetSource(ms);
WriteableBitmap wb = new WriteableBitmap(244, 254);
wb.SetSource(ms);
using (Stream stream = wb.PixelBuffer.AsStream())
using (MemoryStream memoryStream = new MemoryStream())
{
stream.CopyTo(memoryStream);
return memoryStream.ToArray();
}
}
}
public BitmapImage ByteToImage(byte[] array)
{
BitmapImage image = new BitmapImage();
using (InMemoryRandomAccessStream stream = new InMemoryRandomAccessStream())
{
stream.AsStreamForWrite().Write(array, 0, array.Length);
stream.Seek(0);
image.SetSource(stream);
}
return image;
}
#endregion
}
내 XAML 이미지를 가지고있다.
예외 메시지 :
가"형식 'System.ArgumentNullException'의 예외가 mscorlib.ni.dll에서 발생하지만
추가 정보는 사용자 코드에서 처리되지 않았습니다. 값은 null 일 수 없습니다"
누군가 나를 도울 수 있습니까?
가능한 [UWP에서 BitmapImage를 바이트 배열로 변환] (http://stackoverflow.com/questions/36108056/convert-a-bitmapimage-to-byte-array-in-uwp) – Clemens