Ich versuche HttpClient.GetStreamAsync()
Methode zu verwenden, um eine Datei herunterzuladen. Es gibt jedoch ein Problem hier. GetStreamAsync()
Methoden gibt Readonlyly Stream zurück, so kann ich Length
-Eigenschaft nicht verwenden, um Bytearray-Puffer zu deklarieren, in dem ich versuche, Bytes zu lesen.Wie verwende ich die HttpClient.GetStreamAsync() Methode?
using (var file = await _httpClient.GetStreamAsync(url).ConfigureAwait(false))
{
// it fails at file.Length below
byte[] blob = new byte[file.Length];
await file.ReadAsync(blob, 0, (int)file.Length).ConfigureAwait(false);
}
'i nicht Length-Eigenschaft verwenden kann Byte-Array-Puffer zu erklären, in die bytes' zu lesen im Versuch. stream kann Bytes zurückgeben ... Sie müssen kein Array deklarieren ... –
BTW: Es sieht so aus, als hätten Sie 'byte [] blob = await_httpClient.GetByteArrayAsync' noch nicht ausprobiert. –