İçeriğe geç

Kısa Bilgi 1 – DeflateStream Sınıfı

Programlamada çok sık kullanılmayan fakat kullanıldığında programcıyı büyük zahmetten kurtaran yada uygulamaya performans olarak avantaj sağlayan sınıflar/metodlar olabiliyor. İşte bu tip bilgileri blogumda Kısa Bilgi formatında yazmaya karar verdim.

Uygulamada yüksek boyutlu bir byte diziniz var ve bunu sıkıştırmak işinize yarayacaksa DeflateStream sınıfı içindeki Compress ve Decompress metodlarını kullanabilirsiniz. Aşağıda bu iki metodun kullanımına ilişkin bir örnek consol uygulaması var.

        static void Main(string[] args)
        {
            StreamReader Okuma;
            Okuma = new StreamReader(new FileStream("PauloCoelho.txt", FileMode.Open, FileAccess.Read));

            byte[] testData = Encoding.ASCII.GetBytes(Okuma.ReadLine());
            Console.WriteLine("Orjinal: {0}", testData.Length);

            var msCompress = new MemoryStream();
            var defStreamCompress = new DeflateStream(msCompress, CompressionMode.Compress);
            defStreamCompress.Write(testData, 0, testData.Length);

            var resultArraymsCompress = msCompress.ToArray();
            Console.WriteLine("Compress: {0}", resultArraymsCompress.Length);

            GZipStream stream = new GZipStream(new MemoryStream(testData), CompressionMode.Decompress);
            var msDecompress = new MemoryStream();
            msDecompress.Write(testData, 0, testData.Length);
            Console.WriteLine("Decompress: {0}", msDecompress.ToArray().Length);

            Console.ReadLine();
        }

Örnek uygulamayı buradan indirebilirsiniz.

Tarih:Kısa Bilgi

İlk Yorumu Siz Yapın

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

This site uses Akismet to reduce spam. Learn how your comment data is processed.