Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.68/270: Рейтинг темы: голосов - 270, средняя оценка - 4.68
289 / 234 / 33
Регистрация: 09.02.2011
Сообщений: 435
1
.NET 3.x

Преобразование изображения в массив байт

04.05.2011, 15:47. Показов 49413. Ответов 7
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Уважаемые коллеги, подскажите как из изображения(тип любой) получить массив байт? Слышал, что можно через Encoding, а ещё как? Рассмотрю все предложения
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
04.05.2011, 15:47
Ответы с готовыми решениями:

Преобразование класса в массив байт
Доброго времени суток! Задача следующая. Через сокет приходит пакет данных в виде байтового...

Преобразование файла в массив бит для построения изображения
Добрый день. Только начинаю изучать C# и текущая задача поставила меня в ступор. Имеется файл,...

Вычесть из одного массива байт другой массив байт
Здравствуйте! Подскажите что нужно сделать чтобы из одного массива байт вычесть другой массив байт!

Преобразование уинт\инт числа в байт массив
Здравствуйте. Необходимо преобразовать uint\int числа в байт массив БЕЗ использования...

7
6287 / 3570 / 900
Регистрация: 28.10.2010
Сообщений: 5,937
04.05.2011, 15:53 2
C#
1
2
3
4
Image image = Image.FromFile(@"путь");
System.IO.MemoryStream memoryStream = new System.IO.MemoryStream();
image.Save(memoryStream, System.Drawing.Imaging.ImageFormat.Png);
byte[] b = memoryStream.ToArray();
4
289 / 234 / 33
Регистрация: 09.02.2011
Сообщений: 435
04.05.2011, 17:44  [ТС] 3
А теперь с этого массива байт можно восстановить только *.Png?
0
6287 / 3570 / 900
Регистрация: 28.10.2010
Сообщений: 5,937
04.05.2011, 17:52 4
_Да._
1
гроза ленивых студентов
456 / 411 / 51
Регистрация: 27.03.2011
Сообщений: 823
04.05.2011, 17:59 5
Лучший ответ Сообщение было отмечено как решение

Решение

Цитата Сообщение от dzjundzja88 Посмотреть сообщение
А теперь с этого массива байт можно восстановить только *.Png?
Цитата Сообщение от Петррр Посмотреть сообщение
_Да._

C#
1
2
3
4
5
6
7
8
9
            Image image = Image.FromFile("C:\\Users\\myUser\\Desktop\\pict.png");
            System.IO.MemoryStream memoryStream = new System.IO.MemoryStream();
            image.Save(memoryStream, System.Drawing.Imaging.ImageFormat.Png);
            byte[] b = memoryStream.ToArray();
            
            System.IO.MemoryStream memoryStream1 = new System.IO.MemoryStream();
            foreach (byte b1 in b) memoryStream1.WriteByte(b1);
            Image image1 = Image.FromStream(memoryStream1);
            image1.Save("C:\\Users\\myUser\\Desktop\\pict.bmp", System.Drawing.Imaging.ImageFormat.Bmp);
я неправильно понял вопрос или сделал не то, что нужно?
3
мастер топоров
916 / 741 / 101
Регистрация: 16.08.2009
Сообщений: 1,476
04.05.2011, 18:17 6
изображение - это тоже файл
C#
1
2
            byte[] bData = File.ReadAllBytes(@"someFile.someExtention");
            File.WriteAllBytes(@"sevedFile.someExtention", bData);
это самый простой пример
мне кажется вы хотите скачать откуда-то файл изображения. или я ошибаюсь? если для этого, то есть специальные методы синхронного и асинхронного скачивания
3
289 / 234 / 33
Регистрация: 09.02.2011
Сообщений: 435
05.05.2011, 15:52  [ТС] 7
Мне нужно взять с локального диска изображение и преобразовать его в массив байт, который потом будет шифроваться по технологии ICE и передаваться на удаленный сервер, который написан на яве и будет с данного массива восстанавливать картинку. Вот по чему у меня возник вопрос по поводу восстановления. Вот вся суть. Ну и мне соответственно нужно будет с полученного массива байт получать картинку.


Петррр, znake, Koran, респект Всегда внимательно читаю ваши посты, есть чему поучиться!

Завтра займусь! Если будет что-то интересное напишу

Добавлено через 21 час 19 минут
Цитата Сообщение от znake Посмотреть сообщение
Image image = Image.FromFile("C:\\Users\\myUser\\Desktop\\pict.png"); System.IO.MemoryStream memoryStream = new System.IO.MemoryStream(); image.Save(memoryStream, System.Drawing.Imaging.ImageFormat.Png); byte[] b = memoryStream.ToArray(); System.IO.MemoryStream memoryStream1 = new System.IO.MemoryStream(); foreach (byte b1 in b) memoryStream1.WriteByte(b1); Image image1 = Image.FromStream(memoryStream1); image1.Save("C:\\Users\\myUser\\Desktop\\pict.bmp", System.Drawing.Imaging.ImageFormat.Bmp);
Как программно разрешить сохранять любом месте? И у меня была такая же проблема с созданием директорий на диске С: На XP еще все как-то работает, а виста и севен высказывают свои претензии.
Как сразу дать программе права администратора, чтобы никаких проблем не было.
В этой строчке выдает ошибку A generic error occurred in GDI+.
C#
1
image1.Save("C:\\Users\\myUser\\Desktop\\pict.bmp", System.Drawing.Imaging.ImageFormat.Bmp);
а если сменить директорию, то все работает
1
гроза ленивых студентов
456 / 411 / 51
Регистрация: 27.03.2011
Сообщений: 823
05.05.2011, 18:12 8
dzjundzja88, а поиск?! по-моему, это как раз то что ты хочешь...
1
05.05.2011, 18:12
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
05.05.2011, 18:12
Помогаю со студенческими работами здесь

Преобразование байт в десятичные значения
Здравствуйте, прошу помощи в понимании наверное самых основ. Получаю из сокета байты в byte bytes...

Получение изображения из массива байт
Здраствуйте. Есть следующий код: Image GetImageFromByteArray(byte byteArray) { ...

Как перевести массив байт в массив символов, используя определённую кодировку?
Всем доброго времени суток, ув. форумчане! Делаю алгоритм LFSR, почти закончил. Но застопорился...

Преобразование изображения
Привет всем. Может и не по теме, но всё же.. Создаю приложение windowsforms, и как бы в начале...


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

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