Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > .NET для новичков > Загрузка изображения в Picturebox


Автор: WolfAlone 23.3.2012, 02:12
Доброго времени суток!

Подскажите пожалуйста решение следующей задачи:

1. Есть файл (пусть для примера он занимает 100Мб)
2. Заранее известно, что изображение в формате JPEG содержиться внутри этого файла, начиная с 1025-го байта (для примера) и занимает 731Кб (опять же для примера).

То есть, нам заранее известен, начальный и конечный байт этого изображения в некоем файле, который доступен для чтения.

Вопрос заключается в том, как извлечь всё это добро в память (минуя создание файлов на жестком диске), а затем из памяти загрузить в PictureBox?

Автор: golfV 26.3.2012, 19:47
Код


  private void button1_Click(object sender, EventArgs e)
        {
            byte[] img = imageToByteArray(Image.FromFile(@"1.jpg"));
            picBox.Image = byteArrayToImage(img);

        }
 public byte[] imageToByteArray(Image imageIn)
        {
            MemoryStream ms = new MemoryStream();
            imageIn.Save(ms, System.Drawing.Imaging.ImageFormat.Jpeg);
            return ms.ToArray();

        }

        public Image byteArrayToImage(byte[] byteArrayIn)
        {
            MemoryStream ms = new MemoryStream(byteArrayIn);
            Image returnImage = Image.FromStream(ms);
            return returnImage;
        }


Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)