Áttekintés

Bizonyos helyzetekben szükség van a fájlok szelektív törlésére az archívumból. Az eltávolítás végrehajtható maszk vagy bármilyen más feltétel alapján.
Az Aspose.ZIP több formátumból is támogatja a szelektív törlést.

Python Fájl eltávolítása a ZIP-archívumból

A delete_entry metódus egy teljes bejegyzés törlésére szolgál egy ZIP archívumból. Ez a művelet független, és nem igényli a teljes archívum újrafeldolgozását.
A ZIP-archívum bejegyzései a DeleteEntry metóduspár segítségével törölhetők. Egy bejegyzés törlése újracsomagolás nélkül történik, így a többi bejegyzés változatlan marad anélkül, hogy kicsomagolásra és újratömörítésre kerülne sor.

    with zp.Archive("archive.zip") as archive:
        while len(archive.entries) > 1:
            archive.delete_entry(archive.entries[0])
        archive.save("last_entry.zip")

Ez a kód a meglévő „archive.zip” ZIP-archívumot dolgozza fel. Egymás után eltávolítja az összes bejegyzést, kivéve az utolsót, és gyakorlatilag egy új archívumot hoz létre "last_entry.zip" néven, amely csak a fennmaradó fájlt tartalmazza.

Fájl eltávolítása a TAR-ból

A delete_entry metódus a bejegyzések TAR archívumból való eltávolítására is hatékony. Ez a folyamat függetlenül működik, így nincs szükség a teljes archívum újrafeldolgozására. A TAR fájlok delete_entry metódusának használatával, amint az az alábbi példában látható, a bejegyzések zökkenőmentesen törölhetők, biztosítva, hogy a többi bejegyzés ne legyen hatással, és ne essen át kicsomagoláson vagy újratömörítésen.

    with zp.tar.TarArchive("two_files.tar") as archive:
        archive.delete_entry(0)
        archive.save("single_file.tar")

Ha a tömörített tarból (*.tar.gz) szeretne bejegyzéseket törölni, akkor ki kell tömörítenie azt egyszerű *.tar fájlba.

CPIO Fájl eltávolítása az archívumból

A bejegyzések a TAR-hoz hasonlóan törölhetők a CPIO-ból.

    with zp.cpio.CpioArchive("two_files.cpio") as archive:
        archive.delete_entry(archive.entries[0]).save("single_file.cpio")

Ne feledje, a delete_entry metódus visszaadja az archív példányt. Ez bizonyos esetekben segít a kód kompaktabbá tételében.

Törlés az XAR fájlokból

Az Xar archívum egy bejegyzés törlési metódussal is rendelkezik a delete_entry.
Ebben a mintában az összes bejegyzés eltávolításra került, kivéve az utolsót.

    with zp.xar.XarArchive("archive.xar") as archive:
        while len(archive.entries) > 1:
            archive.delete_entry(0)
        archive.save("last.xar")

Ez a példa elszigetelt feldolgozást mutat be, ami azt jelenti, hogy módosítja az archívumot anélkül, hogy befolyásolná a fennmaradó bejegyzések tömörített állapotát. A kód iteratív módon törli az "archive.xar" bejegyzéseket, amíg csak egy marad. Végül az eredményül kapott archívum „last.xar” néven kerül mentésre.

Egyéb támogatott Aspose.ZIP a Python.Net API-hoz

A Python.Net Aspose.ZIP könyvtárával zökkenőmentesen kezelheti a ZIP fájlokkal kapcsolatos különféle feladatokat. Legyen szó formátumok konvertálására, fájlok egyesítésére, tartalom szerkesztésére vagy adatok kibontására, az Aspose.ZIP átfogó funkcionalitást biztosít a munkafolyamat egyszerűsítéséhez és a termelékenység növeléséhez.

  

Support and Learning Resources

  
  

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