2011-06-24 14 views
5

हमारी समस्याविकल्प से पहले अपलोड

हम एक ब्राउज़र आधारित अनुप्रयोग है कि एक उपयोगकर्ता के प्रसंस्करण के लिए एक सर्वर पर फ़ाइलें अपलोड करने की अनुमति देता बना रहे हैं। सर्वर पक्ष को कोडिनेटर v2.0.2 ढांचे का उपयोग करके PHP में लिखा गया है। फ़ाइलों को अपलोड करने के लिए एक और सिस्टम का उत्पादन होता है और उनका प्रारूप हमारे नियंत्रण से बाहर है। वे बहुत बड़े हो सकते हैं (100 एमबी) लेकिन सर्वर की तरफ प्रोसेसिंग के लिए उनकी अधिकांश सामग्री की आवश्यकता नहीं है। फाइलें वास्तव में ज़िप प्रारूप (हालांकि एक bespoke एक्सटेंशन के साथ) हैं और एक अपेक्षाकृत छोटी एक्सएमएल फ़ाइल के साथ कई छवि फ़ाइलों को एक साथ रखती है और यह केवल हमें सर्वर साइड प्रोसेसिंग की आवश्यकता है। स्पष्ट रूप से यह पूरी फ़ाइल भेजने के लिए बहुत अपर्याप्त होगा जब हमें इसके द्रव्यमान के 1% से कम की आवश्यकता होती है। हम उपयोगकर्ताओं से फ़ाइल से XML को मैन्युअल रूप से निकालने के लिए भी नहीं पूछना चाहते हैं।

मेरा प्रश्न

ग्राहक साइड कोड जिप से एक्सएमएल फ़ाइल निकालने और भेज सकते हैं लिखने के लिए हमारे पास क्या विकल्प हैं? अधिकांश आधुनिक ब्राउज़रों में चलने वाली किसी भी तकनीक पर विचार करने में खुशी हुई। जबकि हम एक सी #/सी ++ कोडिंग हाउस हैं, वेब तकनीकें हमारे दिन-प्रतिदिन नहीं हैं इसलिए कोड उदाहरण आभारी रूप से प्राप्त हुए हैं!

बहुत धन्यवाद।

+0

इस उत्तर को देखें http://stackoverflow.com/questions/2163857/unzipping-zip-archives-with-javascript-in-firefox-3-6 कुछ विकल्प हैं, लेकिन उनमें से कोई भी काम नहीं करेगा पुराने ब्राउज़रों के साथ (मैं IE8 प्रकार पुराना बात कर रहा हूं) – cypher

+0

http://stackoverflow.com/questions/2095697/unzip-files-using-javascript – Fuseblown

उत्तर

1

क्या आप ज़िप संपीड़न के लिए लाइब्रेरी की तलाश में हैं? आप क्लाइंट साइड पर SLSharpZipLib और सर्वर पक्ष पर .NET counterpart का उपयोग कर सकते हैं।

1

यह एक हस्ताक्षरित जावा एप्लेट के साथ आसानी से करने योग्य होना चाहिए, 9 0% उपयोगकर्ताओं को जावा स्थापित किया जाएगा, अगर क्लाइंट इसे इंस्टॉल नहीं कर सकता है।

हस्ताक्षर किए गए जावा एप्लेट फ़ाइल तक पहुंचने और आपको आवश्यक फ़ाइल निकालने और इसे अपने सर्वर पर स्थानांतरित करने में सक्षम होंगे।

यह भी तेज़ होगा, यहां तक ​​कि बड़ी फ़ाइलें भी ठीक काम करेगी।

+0

पर एक आशाजनक उत्तर के साथ एक अन्य प्रश्न वास्तव में यह वह समाधान था जिसे हमने चुना था। बहुत धन्यवाद। – Toenex

0

मैंने फिल स्टर्जन द्वारा this lib का उपयोग किया। मेरी फाइलें 20 एमबी से कम थीं इसलिए मैं यह नहीं बता सकता कि यह आपके प्रोजेक्ट के साथ कैसे काम करेगा।

+0

धन्यवाद, लेकिन यह एक सर्वर साइड लाइब्रेरी है जिसके लिए डेटा को साइट पर पहले से अपलोड करने की आवश्यकता है। मैं कुछ ऐसा करने के बाद हूं जो ज़िप संग्रह में केवल एक फाइल अपलोड करेगा। – Toenex

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