TAR یک فرمت آرشیو مبتنی بر یونیکس است که برای بستهبندی چندین فایل از جمله فایلهای صوتی، ویدئو، نصبکننده و غیره استفاده میشود. از سوی دیگر، گنو یک الگوریتم فشردهسازی داده برای فشردهسازی فایلهای بزرگ قبل از اشتراکگذاری است. TAR.GZ ترکیبی از آرشیو TAR و فشرده سازی GNU است. به طور مشابه، XZ Utils همچنین فشردهسازی بایگانیهای TAR را در قالب TAR.XZ فراهم میکند. در این مقاله با نحوه فشرده سازی آرشیو TAR و ایجاد فایل های TAR.GZ و TAR.XZ در سی شارپ آشنا می شوید.
C#.NET API برای ایجاد TAR.GZ و TAR.XZ
Aspose.ZIP for .NET یک API قدرتمند است که به شما امکان میدهد بایگانیهای یکپارچه را از داخل برنامههای NET خود ایجاد کنید. علاوه بر این، به شما امکان می دهد آرشیو فرمت های محبوب از جمله ZIP، TAR، GZIP، BZ2، 7Zip و RAR را از حالت فشرده خارج کرده و استخراج کنید. ما از این API برای ایجاد بایگانی های TAR فشرده (.tar.gz و .tar.xz) استفاده خواهیم کرد. میتوانید DLL API را دانلود یا مستقیماً با استفاده از NuGet نصب کنید.
PM> Install-Package Aspose.Zip
ایجاد یک فایل TAR.GZ در سی شارپ
مراحل زیر برای ایجاد یک فایل TAR فشرده (tar.gz) در سی شارپ است.
- یک شی از کلاس TarArchive ایجاد کنید.
- با استفاده از روش TarArchive.CreateEntry(string, string) فایل ها را به آرشیو اضافه کنید.
- بایگانی را به عنوان TAR.GZ با استفاده از روش TarArchive.SaveGzipped(string) ذخیره کنید.
نمونه کد زیر نحوه ایجاد یک فایل TAR.GZ در سی شارپ را نشان می دهد.
// ایجاد آرشیو TAR
using (var archive = new TarArchive())
{
// افزودن فایل ها به آرشیو
archive.CreateEntry("text.txt", @"D:\texts\article.txt");
archive.CreateEntry("picture.png", @"D:\Picture\photo.png");
// TAR را در فایل tar.gz فشرده کنید
archive.SaveGzipped("result.tar.gz");
}
ایجاد یک فایل TAR.XZ در سی شارپ
XZ Utils یک ابزار محبوب است که خدمات فشرده سازی و رفع فشار را ارائه می دهد. آرشیوهای TAR را در قالب TAR.XZ فشرده می کند. Aspose.ZIP برای دات نت همچنین از فشرده سازی بایگانی های TAR به TAR.XZ پشتیبانی می کند. مراحل زیر برای ایجاد فایل .tar.xz در سی شارپ است.
- یک شیء FileStream جدید برای فایل tar.xz ایجاد کنید.
- یک شی از کلاس TarArchive ایجاد کنید.
- با استفاده از روش TarArchive.CreateEntry(string, string) فایل ها را به آرشیو اضافه کنید.
- بایگانی را با استفاده از روش TarArchive.SaveXzCompressed(Stream) به عنوان TAR.XZ ذخیره کنید.
نمونه کد زیر نحوه فشرده سازی TAR را به فرمت TAR.XZ در سی شارپ نشان می دهد.
// یک فایل tar.xz ایجاد کنید
using (FileStream xzFile = File.Open("archive.tar.xz", FileMode.Create))
{
// ایجاد آرشیو TAR
using (var archive = new TarArchive())
{
// افزودن فایل ها به آرشیو
archive.CreateEntry("text.txt", @"D:\texts\article.txt");
archive.CreateEntry("picture.png", @"D:\Picture\photo.png");
// TAR را در فایل tar.xz فشرده کنید
archive.SaveXzCompressed(xzFile);
}
}
یک مجوز API رایگان دریافت کنید
برای استفاده از API بدون محدودیت ارزیابی، می توانید یک مجوز موقت رایگان دریافت کنید.
نتیجه
فشرده سازی و رفع فشرده سازی بایگانی های TAR معمولاً در سیستم عامل های یونیکس/لینوکس انجام می شود. در این مقاله نحوه فشرده سازی بایگانی های TAR و ایجاد فایل های TAR.GZ و TAR.XZ در سی شارپ را یاد گرفتید. شما به سادگی می توانید API را نصب کنید و نمونه کدهای ارائه شده را در برنامه های NET خود ادغام کنید تا بایگانی های TAR را فشرده کنید. علاوه بر این، میتوانید برای کاوش بیشتر در مورد Aspose.ZIP برای داتنت به مستندات مراجعه کنید. همچنین، میتوانید سوالات خود را در [فروم 16 ما ارسال کنید.