概要
エントリで構成されるアーカイブには、フォルダー全体を圧縮するための createEntries メソッドがあります。これらのメソッドはディレクトリ構造を保存し、すべてのサブフォルダーを再帰的に含めます。さらに、個々のファイル エントリをアーカイブ内の任意のサブフォルダーに追加できます。ZIPフォルダーを圧縮する方法
フォルダーを ZIP アーカイブに圧縮するには、次の Python コード スニペットを使用できます。 zp.Archive クラスを使用すると、フォルダーの構造を維持しながらフォルダー全体のエントリを作成できます。以下に示すように、フォルダー パスを指定して create_entries メソッドを呼び出し、save メソッドでアーカイブを保存するだけです。
with zp.Archive() as archive:
archive.create_entries("D:\\Data")
archive.save("archive.zip")
Sampe 2:
with zp.Archive() as archive:
archive.create_entry("data\\pictures\\photo.bmp", "image.bmp")
archive.create_entry("data\\text\\song.txt", "lyrics.txt")
archive.save("archive.zip")
これらのコードは、ファイルやフォルダーからアーカイブを作成するために使用されます。最初のコードは、「D:\Data」フォルダーからすべてのファイルとサブディレクトリを再帰的に追加し、その構造を維持するアーカイブを作成し、そのアーカイブを「archive.zip」として保存します。 2 番目のコードは、個々のファイルが追加されるアーカイブを作成します。ファイル "data\pictures\photo.bmp" は "image.bmp" という名前でアーカイブに追加され、ファイル "data\text\song.txt" が追加されます。 「lyrics.txt」という名前で追加されます。どちらの場合も、アーカイブは「archive.zip」として保存されます。これらの方法を使用すると、ディレクトリ全体と個々のファイルの両方を ZIP アーカイブに追加でき、アーカイブ内でファイルの名前を変更できるため、データ編成が柔軟になります。
フォルダーを7ZIPで圧縮
7Z 形式の場合、アプローチは前のアプローチと似ていますが、7Z 圧縮の処理に SevenZipArchive クラスを使用します。
with zp.sevenzip.SevenZipArchive() as archive:
archive.create_entries("D:\\Data")
archive.save("archive.7z")
TAR でファイルを圧縮する
zip アーカイブ クラスの代わりに TarArchive を使用できます。使用法は前の例と完全に似ています。
with zp.tar.TarArchive() as archive:
archive.create_entries("D:\\Data")
archive.save("archive.tar")
Sampe 2:
with zp.tar.TarArchive() as archive:
archive.create_entry("data\\pictures\\photo.bmp", "image.bmp")
archive.create_entry("data\\text\\song.txt", "lyrics.txt")
archive.save("archive.tar")
XAR
XarArchive は前述の例と同様に動作し、構造を維持しながらファイルまたはディレクトリを追加するオプションを備えた XAR アーカイブを作成できます。
with open("archive.xar", "xb") as xar_file:
with zp.xar.XarArchive() as archive:
archive.create_entries("C:\\Folder", false)
archive.save(xar_file)
サポートされているその他の Aspose.ZIP for Python.Net API 機能
Python.Net の Aspose.ZIP ライブラリを使用すると、ZIP ファイル ドキュメントに関連するさまざまなタスクをシームレスに処理できます。形式の変換、ファイルの結合、コンテンツの編集、またはデータの抽出が必要な場合でも、Aspose.ZIP はワークフローを合理化し、生産性を向上させるための包括的な機能を提供します。