2009-11-13 16 views
10

बिना एनएसडीएटी को अनजिप करें मुझे कुछ libs (LiteZip और ZipArchive) मिली हैं जो आईफोन पर फ़ाइलों को अनजिप करने की अनुमति देती हैं। लेकिन उनमें से दोनों को एक फाइल के रूप में इनपुट की आवश्यकता है। क्या कोई ऐसी लाइब्रेरी है जो एनएसडीटा को ज़िप-संग्रहित डेटा को अस्थायी फ़ाइल में लिखने के बिना सीधे अनजिप करने की अनुमति देती है?
मैंने इसके लिए ऊपर उल्लिखित लिबियों को अपनाने की कोशिश की है, लेकिन अब तक कोई सफलता नहीं है।अस्थायी फ़ाइल

+1

आप एक अस्थायी फ़ाइल का उपयोग क्यों नहीं करना चाहते हैं? आप असम्पीडित डेटा किस रूप में चाहते हैं? क्या यह आपके वास्तविक एनएसडेटा में कुछ वास्तविक ज़िप डेटा है? –

+0

मैंने ज़िप फ़ाइल एन्क्रिप्ट की है। मैं इसे एनएसडीटा में स्मृति में डिक्रिप्ट करता हूं और फिर इसे सीधे अनजिप करना चाहता हूं। – Vladimir

+0

मैंने एक बार लिखा था कि आपको क्या चाहिए (एन्क्रिप्शन समर्थन के अपवाद के साथ)। यह कुछ ही घंटों में बहुत आसान और महसूस किया गया था। दुर्भाग्यवश, मेरे पास अब कोड तक पहुंच नहीं है। तो आप स्क्रैच से (ज़्लिब के उपयोग के साथ) क्यों नहीं लिखते? ज़िप फ़ाइल एक आसान फ़ाइल प्रारूप है। – Codo

उत्तर

0

जो मैं समझता हूं उससे, ज़िप प्रारूप अलग-अलग फ़ाइलों को संग्रहीत करता है और प्रत्येक संग्रहीत फ़ाइल संपीड़न एल्गोरिदम (आमतौर पर यह डिफलेट एल्गोरिदम) का उपयोग करके संपीड़ित होती है।

आपको लगता है कि इस zlib addition to NSDataGoogle Toolbox For Mac
से यह अस्थायी फ़ाइलों की जरूरत नहीं है आप इस्तेमाल कर सकते हैं हवा निकालना कलन विधि का उपयोग संकुचित था uncompressing डेटा में केवल रुचि रखते हैं।

+1

चूंकि ज़िप अभिलेखागार में फ़ाइलों को व्यक्तिगत रूप से संपीड़ित किया जाता है, और उनके मूल फ़ोल्डर पदानुक्रम में, एक पथ (बस ज़िप संग्रह की जड़ के सापेक्ष) पास करके एनएसडीटा ऑब्जेक्ट निकालना संभव होना चाहिए, है ना? – avocade

1

this question को this answer में, मैं CocoaDev विकी category on NSData जो कि वर्ग के लिए/ज़िप खोलना समर्थन जोड़ता है का कहना है। यह आपको पूरी तरह स्मृति में ऐसा करने देगा।

+1

यह श्रेणी gzip/zlib समर्थन जोड़ती है, वास्तविक ज़िप प्रारूप नहीं (जिस तरह से एक एकल NSData ऑब्जेक्ट को डिकंप्रेस नहीं किया जा सकता है जो फ़ाइलों/निर्देशिका संरचना का प्रतिनिधित्व नहीं कर सकता)। –

संबंधित मुद्दे