Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.78/9: Рейтинг темы: голосов - 9, средняя оценка - 4.78
Неадекват
1492 / 1230 / 246
Регистрация: 02.04.2010
Сообщений: 2,789
1
.NET 4.x

WinRT. Конвертировать BitmapImage в byte[]

18.04.2013, 14:37. Показов 1734. Ответов 5
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Есть набор картинок представляющих из себя byte[] зашифрованный Base64 алгоритмом. Требуется их загрузить, отредактировать и сохранить. Способ преобразования из строки в картинку найден ниже:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
 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?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
18.04.2013, 14:37
Ответы с готовыми решениями:

С# BitmapImage byte[] to java Bitmap
Изображение класса BitmapImage (можно переделать и в System.Drawing.Bitmap - но я уверен не...

Конвертировать float в byte
Значит дело такое Я использую юнити, значит каждую секунду должен конвертироватся Float в Byte...

Конвертировать byte в bool[]
String str = Convert.ToString(q, 2); bool b = new bool; int i = 7; for (int w = str.Length -...

Конвертировать из string в new byte[] { }
Вообщем такой вопрос, у меня задача: Например есть string Test = &quot;0xEB, 0x90&quot;; мне нужно из...

5
0 / 0 / 0
Регистрация: 23.03.2012
Сообщений: 6
29.05.2013, 18:59 2
Здравствуйте! Столкнулся с такой же проблемой. Если Вы нашли ответ, то помогите пожалуйста кодом. Спасибо.
0
Неадекват
1492 / 1230 / 246
Регистрация: 02.04.2010
Сообщений: 2,789
29.05.2013, 19:54  [ТС] 3
learnit, никак. Только сохранять в localStorage, а потом читать с диска. Я решил забить и использовать просто картинки не преобразовывая их в base64string.
0
0 / 0 / 0
Регистрация: 23.03.2012
Сообщений: 6
29.05.2013, 20:10 4
На данный момент стоит задача реализации сохранения BitmapImage в локальную папку пользователя, решил пойти через конверт в byte[], но застрял на этом этапе на несколько часов, теперь думаю пойти по иному пути. Может что-нибудь подскажете? Буду премного благодарен.
0
Неадекват
1492 / 1230 / 246
Регистрация: 02.04.2010
Сообщений: 2,789
29.05.2013, 20:19  [ТС] 5
Вот метод загрузки BitmapImage - находящегося в base64String в файл.
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
        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();
                }
            }
        }
1
0 / 0 / 0
Регистрация: 23.03.2012
Сообщений: 6
29.05.2013, 20:35 6
Да, спасибо. Это я уже нашел. Но проблема в том, что не получается засунуть BitmapImage в base64string.
0
29.05.2013, 20:35
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
29.05.2013, 20:35
Помогаю со студенческими работами здесь

Конвертировать из string в byte
Здравствуйте есть такая строка, представленная шестнадцатеричной системой &quot;28 9D BA DD 03 00 00 6F&quot;...

Не получается конвертировать string в byte
У меня есть двоичный код, но записанный в переменной типа string (primer 1), мне его надо...

Как конвертировать byte[] в string[]?
Как получить строку байтов ?

Конвертировать из byte[] в List<object> и обратно
Софорумчане подскажите, а то совсем мозг не варит, начал так private byte...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru