23 EKİM 2008, PERŞEMBE
Nasıl bir akış içeriğini kopyalayacağım?
Başka bir akış içeriğini kopyalamak için en iyi yolu nedir? Bu standart yarar bir yöntem var mı?
CEVAP
23 EKİM 2008, PERŞEMBE
Dan .NET 4.5, Stream.CopyToAsync
method
input.CopyToAsync(output);
Bu tamamlandığında devam edilebilir Task
bir, gibi döndürür:
await input.CopyToAsync(output)
// Code from here on will be run in a continuation.
CopyToAsync
çağrısı, aşağıdaki kodu yapılır yere bağlı olarak Mayıs ya da adı aynı konu üzerinde devam edebilir unutmayın.
await
ararken yakalandı SynchronizationContext
devamını idam konusunda ne olacağını belirleyecek.
Ayrıca, bu çağrı (ve bu uygulama değiştirilebilir) hala okur ve yazar (sadece konuları engelleme/Ç tamamlama harcamaz) dizileri.
Dan .NET 4.0, var Stream.CopyTo
method
input.CopyTo(output);
İçin .NET ve önce 3.5
Hiçbir şey bu yardımcı çerçeve içine pişmiş olmaz; elle, şu şekilde: içeriğini kopyalamak için
public static void CopyStream(Stream input, Stream output)
{
byte[] buffer = new byte[32768];
int read;
while ((read = input.Read(buffer, 0, buffer.Length)) > 0)
{
output.Write (buffer, 0, read);
}
}
Bunu Paylaş:
Nasıl div içeriğini daha büyük değil y...
Nasıl bir dosyanın içeriğini bir Java ...
Nasıl css ile altına bir div içeriğini...
Nasıl C bulunan bir dosya için bir akı...
Nasıl '' sürekli bir akış gr...