C# ile Yüklenen Dosyayı Byte Array Yapmak

Bu teknik yazı ilk olarak 2022-12-19 tarihinde yayımlandı. Kod örnekleri o tarihteki sürümlere göre yazılmıştır; güncel sürümlerde test edilmeden kullanmayın.
C# ile Yüklenen Dosya Byte Array’e Nasıl Çevirilir?
C# ile kodlama yapan herkes dosya yükleme işlemleri yapmıştır. Dosya yükleme işlemleri yaparken de her zaman birden fazla varyasyon gerçekleştiririz. İşte bu yazıda yüklenen dosyanın nasıl byte[] haline çevrileceğine bakacağız.
Öncelikle hangi platform üzerinden yükleme işlemi yapılacaksa o platforma özel yükleme kodları yazılmalıdır. Bu yazıda sadece dosya yüklemek için gönderildikten sonraki back-end kodları mevcuttur.
Hemen işlemi yapacak olan metodumuza bakacak olursak şu şekilde olacaktır;
public static byte[] ReadFully(Stream input)
{
byte[] buffer = new byte[16 * 1024];
using (MemoryStream ms = new MemoryStream())
{
int read;
while ((read = input.Read(buffer, 0, buffer.Length)) > 0)
{
ms.Write(buffer, 0, read);
}
return ms.ToArray();
}
}
Bu metod parametre olarak Stream kabul etmektedir. Yani yüklenecek olan dosyayı ifade etmektedir. Dosyayı yüklerken oluşabilecek örnek senaryoyu da şu şekilde kodlama yaparak anlatabiliriz;
HttpPostedFile uploadFile = HttpContext.Current.Request.Files["file"];
byte[] DOSYA = ReadFully(uploadFile.InputStream);
Böylece yüklenen dosyayı byte[] haline çevirmiş oluruz. Bundan sonra yapacağımız işlemler sizin ihtiyacınıza kalmış olacaktır.
Herkese iyi çalışmalar dileriz.
