2008-12-23 10 views
7

मैं एक सेव फ़ाइल संवाद खोलना चाहता हूं, क्या उपयोगकर्ता फ़ाइल नाम दर्ज कर लेता है, और यदि वे .csv एक्सटेंशन को भूल जाते हैं, तो क्या इसका सामना करना पड़ता है।AddExtension प्रॉपर्टी सी # 2.0 में कैसे काम करती है?

ऐसा लगता है कि SaveFileDialog AddExtension प्रॉपर्टी काम करेगी, लेकिन ऐसा नहीं है। मैंने DefaultExt प्रॉपर्टी को .csv पर भी सेट किया है, और अभी भी कुछ भी नहीं किया जाता है। मेरी फ़ाइल ठीक से सहेजी जाती है, लेकिन सैन्स एक्सटेंशन, इसलिए उपयोगकर्ता फ़ाइल पर डबल क्लिक नहीं कर सकता है और इसे एक्सेल में खोल सकता है।

मुझे कुछ स्पष्ट याद आना होगा। यहाँ मैं क्या मिल गया है

 SaveFileDialog sfd = new SaveFileDialog(); 
     sfd.DefaultExt = "*.csv"; 
     sfd.Filter = "Comma Separated(*.csv)|*.*"; 
     if (sfd.ShowDialog() == DialogResult.OK) 
     { 
      // Do my file saving 
     } 

उत्तर

12

सिर्फ DefaultExt के लिए "csv" उपयोग करने का प्रयास है - भी, आप using होना चाहिए इस (यह IDisposable है):

 using (SaveFileDialog sfd = new SaveFileDialog()) 
     { 
      sfd.AddExtension = true; 
      sfd.DefaultExt = "csv"; 
      sfd.Filter = "Comma Separated(*.csv)|*.*"; 
      if (sfd.ShowDialog() == DialogResult.OK) 
      { 
       // Do my file saving 
      } 
     } 
+0

जैसा कि मुझे संदेह था, मुझे कुछ स्पष्ट याद आ रही थी। फिर से बचाव के लिए ढेर ओवरफ्लो। यह शायद मेरी परियोजना 100 रुपये बचाया। –

0

यह में विस्तार पर हमले नहीं करता संवाद बॉक्स, हालांकि यह चाहिए। इसके बजाय, यह संवाद बंद होने पर sfd.filename के विस्तार पर निर्भर करता है।

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