Programmazione.it v6.4
Ciao, per farti riconoscere devi fare il login. Non ti sei ancora iscritto? Che aspetti, registrati adesso!
Info Pubblicità Collabora Autori Sottoscrizioni Preferiti Bozze Scheda personale Privacy Archivio Libri Corsi per principianti Forum
Forum :: Programmazione.it :: C# :: stream incompleto da internet ma funzionante in locale!
Scritto da Maximilian Horizon a.k.a. tiberium il 19-05-2012 ore 12:16
Intel Cluster Studio XE
ciao a tutti, sto pezzo di codice mi sta facendo impazzire:

const int chuckDim = 80;

System.Net.WebClient client = new System.Net.WebClient();
Stream stream = client.OpenRead("http://media-cdn.tripadvisor.com/media/photo-s/01/70/3e/a9/needed-backup-lol.jpg");
//Stream stream = client.OpenRead("file:///C:/Users/Tanganello/Downloads/needed-backup-lol.jpg");


//searching file length
WebHeaderCollection whc = client.ResponseHeaders;
int totalLength = (Int32.Parse(whc["Content-Length"]));
byte[] buffer = new byte[totalLength];

//reading and writing
FileStream filestream = new FileStream("C:\Users\Tanganello\Downloads\clone1.jpg", FileMode.Create, FileAccess.ReadWrite);
int accumulator = 0;
while (accumulator + chuckDim < totalLength) {
stream.Read(buffer, accumulator, chuckDim);
filestream.Write(buffer, accumulator, chuckDim);

accumulator += chuckDim;
}
stream.Read(buffer, accumulator, totalLength - accumulator);
filestream.Write(buffer, accumulator, totalLength - accumulator);

stream.Close();
filestream.Flush();
filestream.Close();




in sostanza col primo stream mi arriva una immagine strana, tipo con qualche byte mancante, l'immagine si vede giusta la parte in alto, poi sul blu verso il basso.. insomma una immagine parziale diciamo...

mentre col secondo stream(quello commentato) che prende la stessa immagine dal mio pc arriva perfetta!

sapete mica aiutarmi pls??
Precedente: Web App Developer - Milano
Successiva: Header protocollo HTTP
Intervento di Maximilian Horizon a.k.a. tiberium del 19-05-2012 ore 14:24, Cinisello balsamo (MI)
Cavaliere
Cavaliere

(159 interventi)
Iscritto il 25-02-2007
risolto... il numero di stream.Read è il numero di byte massimi, ma non quelli attualmente ricevuti che invece ritorna il metodo.

grazie lo stesso
Copyright Programmazione.it™ 1999-2013. Alcuni diritti riservati. Testata giornalistica iscritta col n. 569 presso il Tribunale di Milano in data 14/10/2002. Pagina generata in 0.263 secondi.