मैं अपने कार्यक्रम में एक Excel स्प्रेडशीट आयात और निम्न कोड के लिए की आवश्यकता होगी, कर रहा हूँ:जेट इंजन - 255 वर्ण काट-छांट
string connectionString = String.Format(@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source={0};Extended Properties=""Excel 8.0;IMEX=1;HDR=NO;""", MyExcelFile.xls);
command.CommandText = "SELECT * FROM [Sheet1$]";
(ध्यान दें, कोड ऊपर वास्तविक कोड नहीं है, लेकिन जैसा कि आप देख देना चाहिए क्या मैं कर रहा हूं)
मुझे फ़ाइल आयात हो रही है, केवल एक्सेल शीट में कोई कॉलम समस्या है जो 255 से अधिक वर्णों को छोटा कर दिया गया है।
क्या ऐसा होने के आसपास कोई रास्ता है?
मैंने कहीं पढ़ा है कि यदि आप सुनिश्चित करते हैं कि पहले 8 पंक्तियों में कॉलम में टेक्स्ट की एक लंबी रेखा है, तो इसे एक ज्ञापन क्षेत्र के रूप में माना जाएगा और इसलिए छोटा नहीं किया गया है, लेकिन यह काम नहीं कर रहा था।
कोई विचार?
ग्रीम
समाप्त यह इस तरह से कर रही है - अब मैं सी # के माध्यम से एक्सेल फाइल, सीएसवी करने के लिए इसे बचाने के लिए और फिर उस पार्स खोलें। धन्यवाद सभी – Graeme
यह समाधान है? गंभीरता से? क्या एक क्रॉक; बेकार, बेकार एक्सेल स्प्रेडशीट्स। इस तरह के एक लोकप्रिय प्रारूप के लिए, यह सीमा से एक आवेदन में डेटा पढ़ने के लिए असंभव है। आज के रूप में xlsx स्प्रेडशीट पढ़ने के लिए कोई अच्छी तरह से बनाए रखा, ओपन-सोर्स, पूरी तरह से कार्यात्मक एपीआई नहीं है, और ये जेट और एसीई इंजन ऐसे हैंक हैं (पहले एक्स पंक्तियों को देखकर फ़ील्ड प्रकार अनुमान लगाते हैं, फ़ील्ड को 255 वर्णों में छंटनी करते हैं, विकल्पों को बदलने के लिए आवश्यक रजिस्ट्री हैक्स, कुछ विशेषताओं के लिए स्थापित करने के लिए एक्सेल आवश्यक है, एक्सेल परिवर्तन व्यवहार में फ़ाइल खुली है, आदि)। क्या मजाक है! – Triynko
@Triynko: मैं पूरी तरह से सहमत हूं कि यह एक मजाक है, और दुख की बात है कि यह हमारे डेवलपर्स पर एक मजाक है :(इस तरह की चीजें मुझे एमएस से कुछ और करने के बारे में सोचने लगती हैं क्योंकि यह सब साबित करता है कि एमएस परवाह नहीं है :( –