अवलोकन

कुछ स्थितियों में, संग्रह से फ़ाइलों को चुनिंदा रूप से हटाना आवश्यक है। निष्कासन मास्क या किसी अन्य मानदंड के आधार पर किया जा सकता है।
Aspose.ZIP कई प्रारूपों से चयनात्मक विलोपन का समर्थन करता है।

पायथन ज़िप संग्रह से फ़ाइल निकालें

ज़िप संग्रह से संपूर्ण प्रविष्टि को हटाने के लिए delete_entry विधि का उपयोग किया जाता है। यह ऑपरेशन स्वतंत्र है और संपूर्ण संग्रह को पुन: संसाधित करने की आवश्यकता नहीं है।
ज़िप संग्रह की प्रविष्टियों को DeleteEntry तरीकों की जोड़ी का उपयोग करके हटाया जा सकता है। किसी प्रविष्टि को हटाना पुन: पैकिंग के बिना होता है, इसलिए अन्य प्रविष्टियाँ डीकंप्रेस्ड और पुनः संपीड़ित किए बिना अपरिवर्तित रहती हैं।

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

यह कोड मौजूदा ज़िप संग्रह "archive.zip" को संसाधित करता है। यह अंतिम को छोड़कर सभी प्रविष्टियों को क्रमिक रूप से हटा देता है, प्रभावी रूप से "last_entry.zip" नामक एक नया संग्रह बनाता है जिसमें केवल शेष फ़ाइल होती है।

TAR से फ़ाइल हटाएँ

TAR संग्रह से प्रविष्टियाँ हटाने के लिए delete_entry विधि भी प्रभावी है। यह प्रक्रिया स्वतंत्र रूप से संचालित होती है, जिससे संपूर्ण संग्रह को पुन: संसाधित करने की आवश्यकता समाप्त हो जाती है। TAR फ़ाइलों के लिए delete_entry विधि का उपयोग करके, जैसा कि नीचे दिए गए उदाहरण में दिखाया गया है, प्रविष्टियों को निर्बाध रूप से हटाया जा सकता है, यह सुनिश्चित करते हुए कि शेष प्रविष्टियाँ प्रभावित नहीं होती हैं और डीकंप्रेसन या पुनर्संपीड़न से नहीं गुजरती हैं।

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

यदि आप संपीड़ित टार (*.tar.gz) से प्रविष्टियाँ हटाना चाहते हैं, तो इसे सादे *.tar में विघटित करना आवश्यक है।

सीपीआईओ ने फ़ाइल को पुरालेख से हटा दिया

TAR की तरह ही सीपीआईओ से प्रविष्टियाँ हटाई जा सकती हैं।

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

याद रखें, delete_entry विधि संग्रह उदाहरण लौटाती है। इससे आपको कुछ मामलों में अपने कोड को अधिक संक्षिप्त बनाने में मदद मिलेगी।

XAR फ़ाइलों से हटाएँ

Xar संग्रह में एकल प्रविष्टि हटाने की विधि delete_entry भी है।
इस नमूने में अंतिम को छोड़कर सभी प्रविष्टियाँ हटा दी गई हैं।

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

यह उदाहरण पृथक प्रसंस्करण को दर्शाता है, जिसका अर्थ है कि यह शेष प्रविष्टियों की संपीड़ित स्थिति को प्रभावित किए बिना संग्रह को संशोधित करता है। कोड "archive.xar" से प्रविष्टियों को तब तक हटाता है जब तक कि केवल एक ही न रह जाए। अंत में, परिणामी संग्रह को "last.xar" के रूप में सहेजा जाता है।

Python.Net API सुविधाओं के लिए अन्य समर्थित Aspose.ZIP

Python.Net में Aspose.ZIP लाइब्रेरी के साथ, आप ZIP फ़ाइल दस्तावेज़ों से संबंधित विभिन्न कार्यों को सहजता से संभाल सकते हैं। चाहे आपको प्रारूप परिवर्तित करने, फ़ाइलों को मर्ज करने, सामग्री संपादित करने या डेटा निकालने की आवश्यकता हो, Aspose.ZIP आपके वर्कफ़्लो को सुव्यवस्थित करने और उत्पादकता बढ़ाने के लिए व्यापक कार्यक्षमता प्रदान करता है।

  
  

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