2009-03-09 10 views
6

मैं एक छोटा वेब टूल लिखने की कोशिश कर रहा हूं जो एक्सेल फ़ाइल लेता है, सामग्री को पार करता है और फिर डेटा को किसी अन्य डेटासेट से तुलना करता है। क्या यह जावास्क्रिप्ट में आसानी से किया जा सकता है? क्या कोई जावास्क्रिप्ट लाइब्रेरी है जो यह करती है?जावास्क्रिप्ट में एक्सेल फ़ाइल का विश्लेषण कैसे करें?

उत्तर

6

आप पहली बार जावास्क्रिप्ट में फ़ाइल कैसे लोड करेंगे?

इसके अलावा, एक्सेल एक मालिकाना प्रारूप और जटिल है जो वर्षों के साथ सर्वर साइड लाइब्रेरी (जैसे Apache POI) ने इन माइक्रोसॉफ्ट प्रारूपों को सही ढंग से 100% रिवर्स इंजीनियर करने में कामयाब नहीं किया है।

तो मुझे लगता है कि जवाब यह है कि आप नहीं कर सकते हैं।

अद्यतन: वह शुद्ध जावास्क्रिप्ट में है।

अद्यतन 2: अब यह संभव है जावास्क्रिप्ट में फ़ाइलों को लोड करने के लिए: https://developer.mozilla.org/en-US/docs/DOM/FileReader

+0

जावास्क्रिप्ट में एक फ़ाइल नहीं पढ़ सकते हैं स्वयं (कुछ हद तक हालिया जोड़ों को छोड़कर जो शायद आईई में उपलब्ध नहीं हैं), लेकिन आप उस वेबसर्वर का उपयोग करके उसमें मदद कर सकते हैं जो फ़ाइलकंटों के साथ AJAX- अनुरोध का जवाब देता है। मनमाने ढंग से बाइनरी डेटा प्रबंधित करना या तो जेएस में आसान नहीं है (हाल के जोड़ों को छोड़कर, शायद आईई-संगत नहीं है ...) – Frank

+3

मुझे यकीन नहीं है कि इस पोस्ट के समय कला की स्थिति क्या थी, लेकिन अब हम करते हैं जावास्क्रिप्ट में फ़ाइलों को लोड करने के लिए फ़ायरफ़ॉक्स, ओपेरा और क्रोम में फ़ाइल रीडर ऑब्जेक्ट जैसे एपीआई हैं। प्रारूप की स्वामित्व प्रकृति अभी भी एक मुद्दा है, हालांकि मैंने मूलभूत फाइलों को पार्स करने में सक्षम अन्य भाषाओं के लिए पुस्तकालयों को देखा है, सिर्फ जावास्क्रिप्ट में नहीं। –

+0

@wybiral http://niggler.github.io/js-xlsx/ और http://niggler.github.io/js-xls/ बिल –

-1

js में सब कुछ करने के लिए, आप के रूप में अच्छी ActiveX और शायद कार्यालय वेब घटकों का उपयोग करना होगा। बस एक सुझाव, लेकिन आप शायद इस मार्ग पर जाना नहीं चाहते हैं; यह केवल अक्षम और आईई/विन होगा। आप एक सर्वर आधारित समाधान के साथ बेहतर हो जाएगा।

-2

क्या आप वास्तव में को एक्सेल फ़ाइल की आवश्यकता है? Excel का उपयोग CSV या XML में डेटा निर्यात करने के लिए क्यों नहीं करें और उसे लोड करें?

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

+1

उस समाधान के साथ समस्या यह है कि इसे मैन्युअल हस्तक्षेप की आवश्यकता है। एक्सेल में कई फ़ॉमिलास के साथ कई वर्कशीट हैं और एक्सएलएस को सीएसवी में परिवर्तित करने के लिए कोई आसान स्वचालित तरीका नहीं है, जिनमें से कम से कम मुझे पता है। अगर आप किसी उपकरण के बारे में जानते हैं तो कृपया इसे अपडेट करें जो इसे सरल तरीके से करता है। – vivekian2

-1

आपको ActiveX (AJAX के उपयोग पर डब्ल्यू 3 सी स्कूल देखें) का उपयोग करने की आवश्यकता होगी और होस्टिंग कंप्यूटर डेटाकनेक्टर्स (केवल फ़ाइल होस्ट करने वाला कंप्यूटर) में फ़ाइल पंजीकृत करें। पहले उल्लेख किए गए अनुसार, यह विधि माइक्रोसॉफ्ट प्लेटफ़ॉर्म पर निर्भर नहीं है (क्लाइंट के लिए वैसे भी) और आपको Office घटक स्थापित करने की आवश्यकता नहीं है।

यह एमडीबी सहित विंडोज़ में पंजीकृत अधिकांश डेटाफाइलों के लिए किया जा सकता है, और आपको जितना चाहें उतना नियंत्रण देता है, क्योंकि आप अलग-अलग उद्देश्यों के लिए अलग-अलग विंडोज खाते असाइन कर सकते हैं।

जैसा कि मैंने पहले कहा था, यह सब सर्वरसाइड है और क्लाइंट पर कोई प्रभाव नहीं पड़ता है, इसके अलावा क्रेडेंशियल्स, क्रियाओं और सभी को पुनर्प्राप्त करने के अलावा।

यह विधि जावास्क्रिप्ट, एसक्यूएल (नहीं, यहां तक ​​कि एमएसएसएलएल, सिर्फ एसक्यूएल मानक भी नहीं) का उपयोग करती है और केवल यह आवश्यक है कि होस्टिंग कंप्यूटर किसी भी माइक्रोसॉफ्ट एनटी प्लेटफॉर्म को चला रहा हो।

विंडोज डेटाकनेक्टर्स क्या करता है विभिन्न डेटा घटकों के लिए एक सामान्यीकृत इंटरफ़ेस प्रदान करता है जैसे डायरेक्टएक्स वीडियोकार्ड और अन्य परिधीय के लिए करता है। आप इसे एमडीबी (माइक्रोसॉफ्ट एक्सेस) को एक MySQL सर्वर से जोड़ने और डेटा को उस तरह से लाइव करने के लिए भी उपयोग कर सकते हैं, जो मुझे लगता है कि एक्सएलएस स्प्रेडशीट्स का उपयोग करने से भी आसान है ... खासकर जब आप एमडीबी में एक्सएलएस आयात कर सकते हैं।

2

पिछले चार वर्षों में, कई प्रगति हुई है। एचटीएमएल 5 फाइल एपीआई प्रमुख ब्राउज़र विक्रेताओं द्वारा गले लगा लिया गया है और प्रदर्शन संवर्द्धन वास्तव में ब्राउज़र में एक्सेल फ़ाइलों (xls और xlsx दोनों) को पार्स करने के लिए कुछ हद तक संभव बनाता है।

इस क्षेत्र में मेरी एंट्री:

दोनों शुद्ध जे एस पारसर्स हैं

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