2015-05-22 8 views
5

मैं एक स्ट्रीमवाइटर के आधार पर अपने सी # सीएसवीवाइटर के साथ एक सीएसवी लिखता हूं। मेरे डेटा में मेरे पास "बावरो" जैसे कई विशेष पात्र हैं।एक्सेल के साथ खोलने के लिए सी # के लिए सही सीएसवी एन्कोडिंग क्या है?

तो जब मैं अपने सीएसवी को एन्कोड करने के लिए यूटीएफ -8 या एएससीआईआईआई का उपयोग करता हूं तो मुझे "á" नहीं मिल सकता है लेकिन मैं इसे एक्सेल में पूरी तरह से खोल सकता हूं। जब मैं यूनिकोड का उपयोग करता हूं तो मेरे सीएसवी में सही चार होता है लेकिन असल में जब मैं एक्सेल में यह सीएसवी खोलता हूं तो यह स्वचालित रूप से मेरे अन्य सीएसवी की तरह सॉर्ट नहीं होता है, सभी मान पहले कॉलम में स्ट्रिंग के रूप में होते हैं ....

क्या है सही एन्कोडिंग यहाँ?

+0

एक्सेल सीटीवी को केवल एन्कोडिंग के साथ यूटीएफ -8 में एन्कोड किया जा सकता है यदि सीएसवी फ़ाइल में इसकी शुरुआत में बीओएम होता है। यूनिकोड (यूटीएफ -16) एन्कोडेड सीएसवी केवल तभी खोला जाएगा जब वे टैबलेट को सीमित कर दें और अल्पविराम (या अर्धविराम) सीमित न हों। –

+0

फ़ाइल में प्रीम्बल बाइट जोड़ने की कोशिश करें, जैसा कि मैंने यहां लिखा था: https://stackoverflow.com/a/46076517/908936 – razon

उत्तर

2

मैं Windows ANSI Codepage 1252 का उपयोग करना चाहिये जो आप प्राप्त कर सकते हैं के माध्यम से:

Encoding.GetEncoding(1252) 

यह "एक" की तरह वर्णों का समर्थन करता है और एक्सेल 2013

1

निर्यात अपनी CSV करने के लिए Excel 2003 से अच्छी तरह से काम इस एन्कोडिंग Encoding.GetEncoding("Windows-1252")

का उपयोग कर
संबंधित मुद्दे

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