Guardar imagen desde Stream

09/07/2004 - 17:20 por pepe | Informe spam
Hola!!

Les cuento, estoy "jugando" (ojalá!) con el servicio web de
Amazon (tengo mi token y lei todos los derechos de
propiedad) y quiero lograr (de una vez por todas!) guardar
la imagen de portada ya sea de un libro o de un cd,
cualquiera, según sea el caso.

tengo algo asi:

void consultar(Object sender, EventArgs e) {

WebRequest request WebRequest.Create("http://images.amazon.com/images/P/B....jpg");

WebResponse response = request.GetResponse();
Byte[] imgdata = new byte[response.ContentLength];

Stream receiveStream = response.GetResponseStream();
receiveStream.Read(imgdata,0,imgdata.Length);

FileStream fs = new
FileStream("F:\\Amnesiac\\www\\hermano\\hola2.jpg",FileMode.CreateNew,
FileAccess.Write);
fs.Write(imgdata , 0,imgdata.Length);

receiveStream.Close();
fs.Close();
}
_________________

pero no siempre "resulta". A veces, guarda la mitad de la
imagen...

¿me ayudan por favor?.
Gracias!!
 

Leer las respuestas

#1 Sashka
09/07/2004 - 19:30 | Informe spam
La verdad es que yo nunca lo he hecho... pero esos métodos los expone el
framework para estas cosas... y son 3 líneas de código... si funciona tu
prueba me avisas por favor!!

Sashka
MS MVP Access

"pepe" escribió en el mensaje
news:2954c01c465ce$fe1899f0$
Hola!

Gracias por responder!!

voy a probar, aún cuando probé con otro método y me resulta
siempre, mira:

WebRequest request WebRequest.Create("http://images.amazon.com/images/P/B....LZZZZZZZ.
jpg");

WebResponse response = request.GetResponse();
Stream receiveStream = response.GetResponseStream();
FileStream fs = new
FileStream("F:\\Amnesiac\\www\\hermano\\hola2.jpg",FileMode.CreateNew,
FileAccess.Write);
BinaryWriter br = new BinaryWriter(fs);
int b;
while((b=receiveStream.ReadByte()) != -1)
{
br.Write(Convert.ToByte(b));
}
br.Close();
receiveStream.Close();

Preguntas similares