Przegląd
W niektórych sytuacjach konieczne jest selektywne usuwanie plików z archiwum. Usunięcie można wykonać w oparciu o maskę lub inne kryterium.Aspose.ZIP obsługuje selektywne usuwanie z kilku formatów.
Python Usuń plik z archiwum ZIP
Metoda usuwania_entry służy do usuwania całego wpisu z archiwum ZIP. Operacja ta jest niezależna i nie wymaga ponownego przetwarzania całego archiwum.
Wpisy archiwum ZIP można usunąć za pomocą pary metod
DeleteEntry
. Usunięcie wpisu odbywa się bez ponownego pakowania, więc inne wpisy pozostają niezmienione bez dekompresji i ponownej kompresji.
with zp.Archive("archive.zip") as archive:
while len(archive.entries) > 1:
archive.delete_entry(archive.entries[0])
archive.save("last_entry.zip")
Ten kod przetwarza istniejące archiwum ZIP „archive.zip”. Sukcesywnie usuwa wszystkie wpisy z wyjątkiem ostatniego, skutecznie tworząc nowe archiwum o nazwie „last_entry.zip”, które zawiera tylko pozostały plik.
Usuń plik z TAR
Metoda usuwania_entry jest również skuteczna przy usuwaniu wpisów z archiwum TAR. Proces ten przebiega niezależnie, co eliminuje konieczność ponownego przetwarzania całego archiwum. Używając metody usuwania_entry dla plików TAR, jak pokazano w poniższym przykładzie, wpisy można bezproblemowo usunąć, zapewniając, że pozostałe wpisy nie zostaną naruszone i nie zostaną poddane dekompresji ani rekompresji.
with zp.tar.TarArchive("two_files.tar") as archive:
archive.delete_entry(0)
archive.save("single_file.tar")
Jeśli chcesz usunąć wpisy ze skompresowanego pliku tar (*.tar.gz), konieczne jest zdekompresowanie go do zwykłego pliku *.tar.
CPIO Usuń plik z archiwum
Wpisy można usuwać z CPIO podobnie jak w TAR.
with zp.cpio.CpioArchive("two_files.cpio") as archive:
archive.delete_entry(archive.entries[0]).save("single_file.cpio")
Pamiętaj, że metoda usuwania_entry zwraca instancję archiwum. W niektórych przypadkach pomoże to uczynić kod bardziej zwartym.
Usuń z plików XAR
Archiwum Xar posiada również metodę usuwania pojedynczego wpisu Delete_entry.
W tym przykładzie usuwane są wszystkie wpisy oprócz ostatniego.
with zp.xar.XarArchive("archive.xar") as archive:
while len(archive.entries) > 1:
archive.delete_entry(0)
archive.save("last.xar")
Ten przykład ilustruje przetwarzanie izolowane, co oznacza, że modyfikuje ono archiwum bez wpływu na stan skompresowania pozostałych wpisów. Kod iteracyjnie usuwa wpisy z „archive.xar”, aż pozostanie tylko jeden. Na koniec powstałe archiwum jest zapisywane jako „last.xar”.
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
- Zasoby edukacyjne
- Dokumentacja
- Kod źródłowy
- Referencje API
- Wsparcie produktu
- Bezpłatne wsparcie
- Płatne wsparcie
- Bloga
- Informacje o wydaniu
- Dlaczego Aspose.Zip dla Python.Net?
- Lista klientów
- Historie sukcesów