मैं सी ++, बूस्ट और क्यूटी का उपयोग कर एक प्रोजेक्ट पर काम कर रहा हूं। मैं समझता हूं कि एकल फ़ाइलों और बाइटस्ट्रीम का उपयोग कैसे करें, उदाहरण के लिए, क्यूटी में qCompress() फ़ंक्शन।मैं C++ का उपयोग कर फ़ाइलों की निर्देशिका कैसे ज़िप करूं?
मैं उपनिर्देशिका समेत कई फ़ाइलों की निर्देशिका कैसे ज़िप करूं? मैं एक क्रॉस-प्लेटफार्म (मैक, विन, लिनक्स) समाधान की तलाश में हूं; मैं नई प्रक्रियाओं का एक गुच्छा आग नहीं करना पसंद करूंगा।
क्या कई फ़ाइलों से बाइटस्ट्रीम को एक ज़िपित संग्रह में गठबंधन करने का कोई मानक तरीका है, या हो सकता है कि बूस्ट iostream लाइब्रेरी में एक सुविधा फ़ंक्शन या विधि उपलब्ध हो?
सहायता के लिए बहुत धन्यवाद।
अद्यतन: क्वाज़िप लाइब्रेरी वास्तव में बहुत अच्छी लगती है। डाउनलोड पैकेज में एक उदाहरण है ("परीक्षण" डीआईआर में) जो फाइलों की निर्देशिका को ज़िपित करने के लिए बहुत स्पष्ट रूप से दिखाता है।
अपडेट 2: इस कार्य को मेरे लिनक्स निर्माण पर्यावरण पर पूरा करने के बाद, मैंने पाया कि क्वाज़िप विजुअल स्टूडियो कंपाइलर के साथ बिल्कुल काम नहीं करता है। उन सभी कंपाइलर त्रुटियों से निपटना संभव हो सकता है, लेकिन इस पथ को देखने वाले किसी को भी सावधानी बरतनी चाहिए।
मैं दूसरा क्वाज़िप। –
क्वाज़िप जाने के रास्ते की तरह दिखता है। धन्यवाद! – martian
ज़िपिप ++ में एमएसवीसी 6 प्रोजेक्ट फाइलें हैं। हालांकि, यह Boost.Filesystem (2001 के रूप में) से कुछ कोड उधार लेता है, जो वास्तव में कम से कम मेरे VS2008 वातावरण में बॉक्स से संकलित नहीं होता है। तो मुझे लगता है कि मुझे क्वाज़िप, या सादे zlib को भी देखना होगा ... – Reunanen