.NET 4.x WinRT. Конвертировать BitmapImage в byte[] - C#

Узнай цену своей работы

Формулировка задачи:

Есть набор картинок представляющих из себя byte[] зашифрованный Base64 алгоритмом. Требуется их загрузить, отредактировать и сохранить. Способ преобразования из строки в картинку найден ниже:
 public static async Task<BitmapImage> GetImage(string base64String)
        {
            if (base64String == null)
                return null;
 
            var buffer = System.Convert.FromBase64String(base64String);
            using (InMemoryRandomAccessStream ms = new InMemoryRandomAccessStream())
            {
                using (DataWriter writer = new DataWriter(ms.GetOutputStreamAt(0)))
                {
                    writer.WriteBytes(buffer);
                    await writer.StoreAsync();
                }
 
                var image = new BitmapImage();
                image.SetSource(ms);
                return image;
            }
        }
Вопрос: Как сохранить BitmapImage в base64 строку в WinRT окружении? Или хотя-бы как запихнуть картинку в memorystream?

Решение задачи: «.NET 4.x WinRT. Конвертировать BitmapImage в byte[]»

textual
Листинг программы
        public static async Task SaveImage(string base64String, StorageFile file)
        {
            if (base64String == null)
                return;
 
            var buffer = System.Convert.FromBase64String(base64String);
            using (var ms = await file.OpenAsync(FileAccessMode.ReadWrite))
            {
                using (DataWriter writer = new DataWriter(ms.GetOutputStreamAt(0)))
                {
                    writer.WriteBytes(buffer);
                    await writer.StoreAsync();
                    await ms.FlushAsync();
                }
            }
        }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

5   голосов , оценка 3.4 из 5
Похожие ответы