Skompresuj kilka wpisów w jednym archiwum

Kompresuj kilka wpisów do jednego archiwum Dla każdego pliku, który ma zostać skompresowany, należy zastosować metodę create_entry. Poniżej użyjemy domyślnych ustawień kompresji dla każdego formatu.

Jak spakować kilka plików w formacie ZIP za pomocą Python.Net

Do dodania każdego pliku do skompresowanego archiwum używana jest metoda create_entry. W tych przykładach nie określamy żadnych ustawień kompresji, dlatego zastosowane zostaną ustawienia domyślne dla wybranego formatu, czyli algorytm Deflate.

    with zp.Archive() as archive:
        archive.create_entry("first.bin", "data1.bin")
        archive.create_entry("second.bin", "data2.bin")
        # Add as many entries as you need 
        archive.save("archive.zip")

Jak dodać pliki do archiwum 7z

Aby dodać wiele załączników do jednego archiwum 7zip, należy użyć klasy SevenZipArchive wraz z metodami create_entry i save. Wartość domyślna to algorytm LZMA.

    with zp.sevenzip.SevenZipArchive() as archive:
        archive.create_entry("first.bin", "data1.bin")
        archive.create_entry("second.bin", "data2.bin")
        # Add as many entries as you need 	
        archive.save("archive.7z")

Utwórz plik XAR

Aby utworzyć plik XAR, należy użyć algorytmu ZLib.

    with zp.xar.XarArchive() as archive:
        archive.create_entry("first.bin", "data1.bin")
        archive.create_entry("second.bin", "data2.bin")
        # Add as many entries as you need 	
        archive.save("archive.xar")

Ten i poprzednie przykłady tworzą odpowiednio archiwa Zip, 7Zip i XAR. Przykładowy kod otwiera menedżera kontekstu, który tworzy archiwum w odpowiednim formacie i dodaje do archiwum pliki o określonych nazwach. Po dodaniu wszystkich plików do archiwum jest ono zapisywane pod nazwą określoną w metodzie Archive.save.

Przechowywanie kilku plików bez kompresji

Tworzenie archiwum TAR z dołączonym plikiem lub plikami

To samo podejście możemy zastosować w przypadku formatów TAR i CPIO:

    with zp.tar.TarArchive() as archive:
        archive.create_entry("first.bin", "data1.bin")
        archive.create_entry("second.bin", "data2.bin")
        # Add as many entries as you need 
        archive.save("archive.tar")

Dołączanie plików do archiwum CPIO

Możesz użyć CpioArchive zamiast TarArchive. Użycie jest całkowicie podobne do poprzedniego przykładu:

    with zp.cpio.CpioArchive() as archive:
        archive.create_entry("first.bin", "data1.bin")
        archive.create_entry("second.bin", "data2.bin")
        # Add as many entries as you need 
        archive.save("archive.cpio")

Podane przykłady kodu pokazują, jak za pomocą biblioteki aspose.zip można łatwo i efektywnie przechowywać dowolną liczbę plików w archiwum. Takie podejście zapewnia szybkość operacji i zwiększa wygodę pracy z plikami. Dzięki temu będziesz mógł szybko tworzyć archiwa w formatach TAR i CPIO.

Formaty przeznaczone wyłącznie do kompresji, bez wpisów

Jak dodać plik do archiwum .GZ

Przy kilku formatach kompresji nie możemy użyć kilku wpisów, dlatego powinniśmy zastosować podejście z jednego źródła, jak opisano poniżej:

    with io.FileIO("alice29.txt") as source:
        with zp.gzip.GzipArchive() as archive:
            archive.set_source(source)
            archive.save("archive.gz")

Podane przykłady kodu pokazują, jak za pomocą biblioteki aspose.zip można łatwo i efektywnie przechowywać dowolną liczbę plików w nieskompresowanym archiwum. Takie podejście zapewnia szybkość operacji i zwiększa wygodę pracy z plikami. Dzięki temu będziesz mógł szybko tworzyć archiwa w formatach ZIP, 7Z, TAR, XAR, CPIO, co przydaje się do porządkowania i przesyłania plików w różnych sytuacjach.

Kompresuj pliki do LZ

    with io.FileIO("alice29.txt") as source:
        with zp.lzip.LzipArchive() as archive:
            archive.set_source(source)
            archive.save("archive.lz")

W obu przykładach kod otwiera do odczytu plik alice29.txt, tworzy archiwum w odpowiednim formacie, dodaje plik do archiwum i zapisuje archiwum z odpowiednim rozszerzeniem pliku.

Pakiet TAR.GZ

Możemy użyć metody save_gzipped , aby połączyć formaty tylko archiwalne i tylko kompresyjne. Zobacz przykład dla tar.gz poniżej:

    with zp.tar.TarArchive() as archive:
        archive.create_entry("first.bin", "data1.bin")
        archive.create_entry("second.bin", "data2.bin")
        # Add as many entries as you need 
        archive.save_gzipped("archive.tar.gz")

Ten kod demonstruje tworzenie skompresowanego archiwum TAR o nazwie Archive.tar.gz. Wykorzystuje menedżera kontekstu do bezpiecznego tworzenia archiwum i dodawania dwóch plików, data1.bin i data2.bin, zmieniając ich nazwy na First.bin i Second.bin w archiwum. Takie podejście upraszcza tworzenie skompresowanych archiwów TAR przy jednoczesnym zachowaniu oryginalnej struktury i zawartości plików.

TAR tworzy archiwum BZ2

Istnieje inny sposób łączenia formatów – możemy zastosować po kolei różne algorytmy kompresji. W poniższym przykładzie najpierw używamy TAR, a następnie BZIP2:

    with zp.tar.TarArchive() as tar:
        tar.create_entry("first.bin", "data1.bin")
        tar.create_entry("second.bin", "data2.bin")
        with zp.bzip2.Bzip2Archive() as archive:
            archive.set_source(tar)
            archive.save("archive.tar.bz2")

Ten kod osiąga tę samą funkcjonalność, ale przy innym podejściu. Wykorzystuje metodę tar.create_entry do tworzenia wpisów w archiwum. W rezultacie archiwum jest zapisywane w formacie tar.bz2 przy użyciu metody zp.bzip2.Bzip2Archive.

Inne obsługiwane funkcje Aspose.ZIP dla Python.Net API

Dzięki bibliotece Aspose.ZIP w Python.Net możesz bezproblemowo wykonywać różne zadania związane z dokumentami w formacie ZIP. Niezależnie od tego, czy potrzebujesz konwertować formaty, scalać pliki, edytować zawartość czy wyodrębniać dane, Aspose.ZIP zapewnia wszechstronną funkcjonalność usprawniającą przepływ pracy i zwiększającą produktywność.

  

Support and Learning Resources

  
  

Aspose.Zip offers individual archive processing APIs for other popular development environments, listed below: