سورس کد نرم افزار فشرده سازی SharpZipLib یا DotNetZip در vb.net

برای دانلود سورس کد نرم افزار فشرده سازی SharpZipLib یا DotNetZip در vb.net به لینک زیر بروید

📥 برای دانلود اینجا کلیک فرمایید

سورس کد نرم افزار فشرده‌سازی با SharpZipLib و DotNetZip در VB.NET: راهنمای جامع و کامل


در دنیای برنامه‌نویسی، فشرده‌سازی فایل‌ها یکی از نیازهای حیاتی است که توسعه‌دهندگان همواره به دنبال راه‌هایی کارآمد و سریع برای انجام این کار هستند. در این زمینه، دو کتابخانه قدرتمند و محبوب یعنی SharpZipLib و DotNetZip به عنوان ابزارهای برتر در زبان برنامه‌نویسی VB.NET شناخته می‌شوند. هر دوی این کتابخانه‌ها امکانات متنوعی را برای فشرده‌سازی، استخراج، و مدیریت فایل‌های ZIP فراهم می‌کنند، اما در عین حال تفاوت‌هایی نیز دارند که درک صحیح آن‌ها می‌تواند نقش کلیدی در انتخاب بهترین گزینه برای پروژه‌های مختلف ایفا کند.

معرفی کلی و تاریخچه


در ابتدا، لازم است که بدانیم SharpZipLib و DotNetZip چه هستند؛ SharpZipLib که در اصل با هدف ارائه امکانات فشرده‌سازی و کار با فایل‌های ZIP و GZIP در زبان C# طراحی شده است، یک کتابخانه متن‌باز و چندسکویی است. این کتابخانه، نه تنها در VB.NET بلکه در زبان‌های دیگر نظیر C# و F# نیز قابل استفاده است. از طرف دیگر، DotNetZip یکی دیگر از کتابخانه‌های متن‌باز است که به صورت خاص بر روی فشرده‌سازی ZIP تمرکز دارد و در پروژه‌های مختلف به دلیل سادگی و کارایی بالا، محبوبیت یافته است.

ساختار و معماری


در رابطه با ساختار این کتابخانه‌ها، هر دو بر پایه مفاهیم شی‌گرایی و طراحی مدرن ساخته شده‌اند. این یعنی، آن‌ها کلاس‌هایی دارند که به راحتی قابل گسترش و استفاده مجدد هستند. برای مثال، در SharpZipLib، کلاس‌های `ZipOutputStream` و `ZipInputStream` وظیفه فشرده‌سازی و استخراج فایل‌ها را بر عهده دارند. این کلاس‌ها قابلیت تنظیم پارامترهای مختلف مانند سطح فشرده‌سازی، رمزگذاری، و مدیریت فایل‌های چندبخشی را دارا هستند.
در DotNetZip، کلاس‌های `ZipFile` و `ZipEntry` نقش محوری دارند. `ZipFile` نمایانگر یک فایل ZIP است که می‌تواند شامل چندین فایل و شاخه باشد، در حالی که `ZipEntry` نشانگر هر فایل مجزا در داخل آرشیو است. این ساختار ساده و قابل فهم، کار با فایل‌های ZIP را بسیار آسان و سریع می‌سازد.

پیاده‌سازی فشرده‌سازی فایل‌ها


در این بخش، به بررسی کدهای نمونه برای فشرده‌سازی فایل‌ها در VB.NET با استفاده از هر دو کتابخانه می‌پردازیم. شروع می‌کنیم با SharpZipLib.

نمونه کد فشرده‌سازی با SharpZipLib


vb.net  
Imports ICSharpCode.SharpZipLib.Zip
Imports System.IO
Public Sub CompressFileSharpZipLib(sourceFilePath As String, zipFilePath As String)
Using zipOutputStream As New ZipOutputStream(File.Create(zipFilePath))
zipOutputStream.SetLevel(9) ' سطح فشرده‌سازی از 0 تا 9
Dim fileName As String = Path.GetFileName(sourceFilePath)
Dim newEntry As New ZipEntry(fileName)
zipOutputStream.PutNextEntry(newEntry)
Using fileStream As FileStream = File.OpenRead(sourceFilePath)
fileStream.CopyTo(zipOutputStream)
End Using
zipOutputStream.CloseEntry()
zipOutputStream.IsStreamOwner = True
End Using
End Sub

در این کد، ابتدا یک شیء `ZipOutputStream` ساخته می‌شود که به فایل ZIP جدید متصل است. سطح فشرده‌سازی تنظیم می‌شود، سپس فایل مورد نظر به عنوان یک `ZipEntry` اضافه می‌گردد. فایل منبع خوانده می‌شود و به داخل آرشیو فشرده می‌شود. در نهایت، استریم بسته می‌شود و فایل ZIP ساخته می‌شود.

نمونه کد استخراج فایل ZIP با SharpZipLib


vb.net  
Public Sub ExtractZipSharpZipLib(zipFilePath As String, extractPath As String)
Using zipInputStream As New ZipInputStream(File.OpenRead(zipFilePath))
Dim entry As ZipEntry
While (entry = zipInputStream.GetNextEntry()) IsNot Nothing
Dim filePath As String = Path.Combine(extractPath, entry.Name)
Using stream As New FileStream(filePath, FileMode.Create)
zipInputStream.... ← ادامه مطلب در magicfile.ir

برای دانلود کرد به سایت اصلی بروید دانلود از لینک زیر می باشد

📥 برای دانلود اینجا کلیک فرمایید