Olá, pessoal do GUJ!
Tudo beleza?
Estava eu aqui fazendo meus testes quando me deparei com uma dúvida.
Tenho uma classe bonitinha para converter uma Image para bytes[] e vice-versa.
O problema está no vice-versa.
Para converter de Image para bytes[], eu faço da seguinte forma:
public byte[] imageToByte(String fileName) {
FileStream fs = new FileStream(fileName, FileMode.Open, FileAccess.Read);
MemoryStream ms = new MemoryStream(new byte[fs.Length]);
return ms.ToArray();
}
Beleza, pelo visto tá tudo belezinha!
Daí, eu uso esse método para converter de byte[] para Image:
public Image byteToImage(byte[] bytes) {
MemoryStream ms = new MemoryStream(bytes, 0, bytes.Length);
ms.Write(bytes, 0, bytes.Length);
return Image.FromStream(ms, true);
}
O problema está aqui.
Na linha:
return Image.FromStream(ms, true);
Aparece o seguinte erro: Parâmetro inválido. O problema é que os parâmetros estão corretos!
Alguém sabe o que pode ser?
Outra coisa: Como eu faço para saber se minha conversão para byte[] ficou correta?
Desde já, grato!
[]s