تکنیک های مختلف فشرده سازی داده ها برای کاهش اندازه فایل ها و پوشه ها برای ذخیره سازی یا انتقال استفاده می شود. دو فرمت فشرده سازی پرکاربرد عبارتند از TAR و ZIP که هر کدام نقاط قوت و موارد استفاده خاص خود را دارند. اما اگر نیاز به ترکیب این فرمت ها داشته باشید چه؟ در این پست وبلاگ، نحوه ادغام TAR با ZIP در پایتون را بررسی خواهیم کرد.
کتابخانه پایتون برای ادغام TAR با ZIP
Aspose.ZIP for Python یک کتابخانه غنی از ویژگی است که به شما امکان می دهد با فرمت های مختلف آرشیو از جمله ZIP و TAR کار کنید. شما می توانید از کتابخانه برای ایجاد، افزودن، استخراج و دستکاری آرشیوها بدون زحمت استفاده کنید. ما از این کتابخانه برای ادغام TAR با آرشیو ZIP استفاده خواهیم کرد.
میتوانید کتابخانه را دانلود یا از PyPI نصب کنید.
> pip install aspose-zip
چرا TAR را با ZIP ادغام کنیم؟
قبل از اینکه به جزئیات فنی بپردازیم، اجازه دهید به طور خلاصه در مورد اینکه چرا ممکن است بخواهید TAR را با ZIP ادغام کنید، صحبت کنیم. هر دو TAR و ZIP دارای مزایای منحصر به فرد خود هستند:
TAR: TAR یک فرمت بایگانی فایل است که معمولا در سیستم های یونیکس و لینوکس استفاده می شود. این برای بسته بندی چندین فایل و دایرکتوری در یک فایل واحد بدون فشرده سازی ایده آل است. آرشیو TAR اغلب برای پشتیبان گیری و بسته بندی فایل ها برای توزیع استفاده می شود.
ZIP: ZIP یک فرمت فشرده سازی پرکاربرد است که نه تنها فایل ها و دایرکتوری ها را بسته بندی می کند، بلکه آنها را فشرده می کند تا فضای ذخیره سازی را کاهش دهد و انتقال فایل را سرعت بخشد. ZIP در چندین پلتفرم پشتیبانی می شود و با ابزارهای مختلف آرشیو سازگار است.
ادغام TAR با ZIP در سناریوهایی که می خواهید ساختار دایرکتوری فایل های TAR را حفظ کنید و در عین حال مزایای فشرده سازی ZIP را به دست آورید می تواند مفید باشد.
TAR را با ZIP در پایتون ادغام کنید
مراحل زیر برای ادغام TAR با ZIP در پایتون آمده است.
- ابتدا TAR را با استفاده از کلاس TarArchive بارگذاری کنید.
- سپس، ZIP را با استفاده از کلاس Archive بارگیری کنید.
- پس از آن، ورودی های TAR را با استفاده از مجموعه Archive.entries حلقه بزنید.
- هر ورودی را از TAR به یک شی BytesIO با استفاده از روش Archive.entries[index].extract(BytesIO) استخراج کنید.
- ورودی استخراج شده را با استفاده از روش Archive.createentry(string, BytesIO) به آرشیو ZIP اضافه کنید.
- در نهایت با استفاده از روش Archive.save(string) آرشیو ZIP را ذخیره کنید.
نمونه کد زیر نحوه ادغام TAR با آرشیو ZIP در پایتون را نشان می دهد.
import aspose.zip as az
from io import BytesIO
# فایل TAR را بارگیری کنید
with az.tar.TarArchive("source.tar") as source:
# فایل ZIP را بارگیری کنید
with az.Archive("target.zip") as target:
# از طریق ورودی های TAR حلقه بزنید و آنها را به ZIP اضافه کنید
for i in range(source.entries.length):
if not source.entries[i].is_directory:
ms = BytesIO()
source.entries[i].extract(ms)
target.create_entry(source.entries[i].name, ms)
else:
target.create_entry(source.entries[i].name + "/", None)
# ذخیره آرشیو ZIP
target.save("merged_tar_zip.zip")
کتابخانه ZIP Python - یک مجوز رایگان دریافت کنید
[یک مجوز موقت رایگان] را دریافت کنید و با چندین قالب آرشیو بدون محدودیت ارزیابی کار کنید.
منابع یادگیری
با استفاده از منابع ارائه شده در زیر درباره کتابخانه زیپ پایتون ما بیشتر بیاموزید:
ابزار ZIP آنلاین
از [ابزارهای آنلاین برای کار با آرشیوها13 رایگان ما استفاده کنید که توسط Aspose.ZIP برای Python پشتیبانی میشوند.
نتیجه
ادغام TAR با ZIP با استفاده از Aspose.ZIP برای Python یک فرآیند ساده است که به شما امکان می دهد از نقاط قوت هر دو فرمت آرشیو استفاده کنید. چه نیاز به بستهبندی فایلها برای توزیع، ایجاد پشتیبانگیری یا صرفاً کاهش فضای ذخیرهسازی داشته باشید، Aspose.ZIP کار را ساده میکند و به شما کنترل دقیقی بر فرآیند میدهد. شما به راحتی می توانید دستورالعمل های ارائه شده در این پست وبلاگ را دنبال کنید و TAR را با آرشیوهای ZIP در برنامه های پایتون خود ادغام کنید.