2010-05-19 6 views
0

J'ai un fichier jpeg qui est détenu comme une liste (de Byte) Actuellement, j'ai le code que je peux utiliser pour charger et enregistrer le fichier jpeg soit comme un binaire (.jpeg) ou un csv d'octets (asadsda.csv).liste (de byte) à PictureBox

J'aimerais pouvoir prendre la liste (de Byte) et la convertir directement en Picturebox sans l'enregistrer sur le disque, puis la charger dans la zone d'image. Si vous êtes curieux, la raison pour laquelle j'obtiens le fichier image sous la forme d'une liste d'octets est qu'il est transféré en série via un protocole orienté sur les octets industriels comme un paquet d'octets. J'utilise VB.net, mais l'exemple C# est très bien aussi.

Répondre

4

Vous pouvez le faire:

var ms = new MemoryStream(byteList.ToArray()); 
    pictureBox.Image = Image.FromStream(ms); 
1

Ce que vous devez faire est de prendre les octets et de les lire dans un flux. Vous pouvez ensuite utiliser le flux pour charger l'image de la zone d'image.

using(MemoryStream ms = new MemoryStream(byteList.ToArray())) 
{ 
    this.pictureBox1.Image = Image.FromStream(ms); 
}