2009-09-02 24 views
29

मैं एक्सेल फ़ाइलों को पढ़ने/लिखने/बनाने के लिए सभी बेजीलियन तरीकों से नरक के रूप में उलझन में हूं। वीएसटीओ, ओएलडीडीबी, आदि, लेकिन वे सभी प्रतीत होते हैं कि कार्यालय को स्थापित करने की आवश्यकता है।मैं कार्यालय स्थापित किए बिना प्रोग्रामेटिक रूप से एक एक्सेल लिख, पढ़, लिख सकता हूं?

यहां मेरी स्थिति है: मुझे एक ऐप विकसित करने की आवश्यकता है जो इनपुट के रूप में एक्सेल फ़ाइल लेगा, कुछ गणना करें और एक नई एक्सेल फ़ाइल बनाएं जो मूल रूप से पहली एक्सेल फ़ाइल का संशोधन होगा। सभी बाधाओं के साथ कि जिस मशीन को चलाता है वह कार्यालय स्थापित नहीं हो सकता है। (पूछें क्यों नहीं ...)

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

+0

आपको किस संस्करण का समर्थन करने की आवश्यकता है? –

+0

यह इस बात पर निर्भर करता है कि आपको आवश्यक एमएस एक्सेल की कौन सी विशेषताएं हैं। क्या आपको किसी फैंसी फीचर की ज़रूरत है? – voyager

+3

आपको "खोई गई सुविधाओं" की कितनी सहिष्णुता की आवश्यकता है। उदाहरण के लिए आपको फॉर्मूला, पिवोट टेबल, चार्ट इत्यादि को बनाए रखने की ज़रूरत है? या यह सिर्फ इन फ़ाइलों में डेटा है? –

उत्तर

47

HTML तालिका प्रारूप में अपने एक्सेल लिखें:

<html> 
<body> 
    <table> 
    <tr> 
    <td style="background-color:#acc3ff">Cell1</td> 
    <td style="font-weight:bold">Cell2</td> 
    </tr> 
    </table> 
</body> 
</html> 

और अपनी फ़ाइल एक xls विस्तार दे। एक्सेल इसे स्वचालित रूप से परिवर्तित करेगा

+22

आप मुझसे मजाक कर रहे हैं। – eviljack

+3

मैंने इस विधि का कई बार उपयोग किया है, सरल, बहुत अच्छा काम करता है। लेकिन वेब ऐप्स के मामले में, केवल सामग्री प्रकार/माइम प्रकार को एक्सेल करने के लिए सेट करें (मेरे सिर के ऊपर से सटीक माइम प्रकार को याद नहीं कर सकते) –

+1

और, एक्सेल के आपके संस्करण के आधार पर, यह आम तौर पर फ़ॉर्मेटिंग भी उठाता है। बोल्ड टेबल सेल? एक्सेल इसे खत्म करता है .. पृष्ठभूमि रंग? प्रतियां भी ... –

6

इसके बजाय सीएसवी फाइलें पढ़ें और लिखें। एक्सेल उन्हें ठीक से पढ़ता है और उनका उपयोग करना आसान है। यदि आपको .xls फ़ाइलों के विरुद्ध काम करने की आवश्यकता है तो ओपनऑफिस के साथ-साथ एक्सेल के लिए समर्थन रखने का प्रयास करें। ओपनऑफिस एक्सेल फाइलें पढ़ और लिख सकता है।

+1

ओपनऑफिस एपीआई यहां बहुत उपयोगी हो सकता है: http://api.openoffice.org/ –

+2

समस्या यहां 0 स्वरूपण है। –

8

कार्यालय स्थापित किए बिना आपको Excel बाइनरी फ़ाइल प्रारूप को समझने के लिए डिज़ाइन की गई कुछ आवश्यकता होगी (जब तक कि आप केवल Office 2007 .xlsx फ़ाइलों को खोलना नहीं चाहते)।

सबसे अच्छा मुझे मिला है (और जो मैं उपयोग करता हूं) SpreadsheetGear है, जो .NET मूल होने के अतिरिक्त, बहुत तेज और अधिक स्थिर है तो COM/OLE समाधान (जिसे मैंने अतीत में उपयोग किया है)

0

एक्सेल फ़ाइलें मालिकाना प्रारूप में हैं इसलिए (afaik) आप ऑफिस इंटरऑप उपलब्ध किए बिना ऐसा करने में सक्षम नहीं होंगे। कुछ तीसरे पक्ष के उपकरण मौजूद हैं (जो संभावित रूप से एमएस से प्रारूप को लाइसेंस देते हैं?) लेकिन मैंने उन्हें अपनी उपयोगिता पर टिप्पणी करने के लिए स्वयं का उपयोग नहीं किया है।

मुझे लगता है कि आप बेस फ़ाइल प्रारूप को नियंत्रित नहीं कर सकते हैं, यानी सरल सीएसवी या एक्सएमएल प्रारूप संभव नहीं होने जा रहे हैं?

0

मैं CarlosAg नामक एक बहुत अच्छी लाइब्रेरी का उपयोग करता था, जो Excel XML प्रारूप का उपयोग करता है। यह बहुत अच्छा था (और एक्सेल प्रारूप को पहचानता है), और अविश्वसनीय रूप से तेज़ भी। इसे here देखें।

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

0

यदि आप @RHicke के सुझाव के अनुसार सीएसवी फाइलों के साथ काम नहीं कर सकते हैं, और मानते हैं कि आप एक वेब ऐप पर काम कर रहे हैं, क्योंकि एक डेस्कटॉप ऐप की आवश्यकता के अनुसार एक्सएल स्थापित करने की गारंटी होगी।

मैं एक वेब सेवा के रूप में अपने प्रसंस्करण एप्लिकेशन बनाते हैं, और एक एक्स्ट्रा लार्ज ऐड जो एक्स्ट्रा लार्ज से सीधे अपने वेब सेवा के साथ बातचीत करेंगे निर्माण कहेंगे,।

2

क्या आपने रास्ता संख्या bazillion और एक पर विचार किया था: Open XML SDK का उपयोग कर? आप शैलियों को बनाए रख सकते हैं और अपनी पसंद के हिसाब से इसे ट्विक कर सकते हैं। किसी वास्तविक फ़ाइल में आप जो कुछ भी कर सकते हैं वह प्रोग्रामेटिक रूप से हासिल करना संभव है।एसडीके दस्तावेज़ परावर्तक नामक एक उपकरण के साथ आता है जो अंतर्निहित एक्सएमएल दिखाता है और यहां तक ​​कि LINQ कथन भी दिखाता है जिसका उपयोग उन्हें उत्पन्न करने के लिए किया जा सकता है। इसके साथ खेलना महत्वपूर्ण है, यह देखते हुए कि परिवर्तन कैसे किए जाते हैं, फिर कोड में पुन: प्रयास करते हैं।

केवल चेतावनी यह है कि यह नए एक्सएमएल आधारित प्रारूपों (* .xlsx) के लिए पुराने संस्करणों के लिए काम करेगा। थोड़ी सी सीखने की वक्र है लेकिन अधिक सामग्री ब्लॉग और अन्य साइटों पर अपना रास्ता बना रही है।

1

एक्सेल एक्सएलएसएक्स फाइलें "बस" एक्सएमएल फाइलें - अधिक सटीक ज़िप फाइलें जिनमें कई एक्सएमएल फाइलें हैं। बस Excel फ़ाइल Test.xslx को Test.zip पर पुनर्नामित करें और इसे अपने पसंदीदा ज़िप प्रोग्राम के साथ खोलें। एक्सएमएल स्कीमा, afaik, मानकीकृत और उपलब्ध हैं। लेकिन मुझे लगता है कि यह केवल आदिम एक्सएमएल प्रोसेसिंग टूल और ढांचे का उपयोग करके उन्हें कुशल बनाना आसान नहीं हो सकता है।

0

एक्सएलएसएक्स फ़ाइलों के लिए, http://www.codeplex.com/ExcelPackage का उपयोग करके देखें। अन्यथा, कुछ भुगतान किए गए तीसरे पक्ष के समाधान वहां मौजूद हैं, जैसे डेविड ने सुझाव दिया था।

1

यदि लागत कोई मुद्दा नहीं है, तो मैं Aspose के एक्सेल उत्पाद को देखने का सुझाव दूंगा। मैं उनके शब्द उत्पाद का उपयोग करता हूं और मैं संतुष्ट हूं।

Aspose.Cells

+2

कुछ मुफ्त विकल्पों को आजमाने के बाद, मेरी टीम ने Aspose.Cells का उपयोग करने का भी फैसला किया। यह उपयोग करने के लिए बहुत सहज है और कोड को बनाए रखना आसान है। – dawntrader

0

मैं कार्यालय एक सर्वर मशीन पर स्थापित नहीं होने की आवश्यकता को समझ सकते हैं। ऐसे कई पुस्तकालय हैं जैसे कि उपलब्ध होने के नाते, उनमें से कुछ को लाइसेंस की आवश्यकता है। यदि आप एमएस एक्सेल प्रारूपों को लक्षित कर रहे हैं, तो माइक्रोसॉफ्ट से एक मूल, इंटरऑपरेबिलिटी लाइब्रेरी, एसीई ओएलडीडीबी डाटा प्रदाता, आप एक मशीन पर स्थापित कर सकते हैं और प्रोग्रामिंग के माध्यम से पढ़ना शुरू कर सकते हैं। आपको अपनी आवश्यकताओं के अनुसार कनेक्शन स्ट्रिंग और कमांड को परिभाषित करने की आवश्यकता है। (Ref: This article @yoursandmyideas) सेटअप और समस्या निवारण जानकारी के साथ इस लाइब्रेरी का उपयोग करने के बारे में बात करता है।

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

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