2012-01-25 19 views

उत्तर

170

# इंगित करता है कि मान वैकल्पिक है। आप उत्पादन 0.00 आपको निम्न की आवश्यकता पाने के लिए चाहते हैं:

0.ToString("0.00"); 

here for the custom numeric formats इस विधि को पारित किया जा सकता है कि देखें।

+1

एक बात अभी भी मुझे उलझन में है कि परिणाम 0 क्यों नहीं है। क्योंकि 0 वैकल्पिक नहीं है। खाली समझ में आता है? – user960567

126

क्योंकि प्रारूप स्ट्रिंग में, # का उपयोग वैकल्पिक वर्ण प्लेसहोल्डर को इंगित करने के लिए किया जाता है; इसका उपयोग केवल तभी किया जाता है जब संख्या का प्रतिनिधित्व करने के लिए आवश्यक हो।

आप ऐसा करते हैं, तो इसके स्थान: 0.ToString("0.##"); आपको मिलेगा: 0

दिलचस्प है, अगर आप ऐसा करते हैं: 0.ToString("#.0#"); आपको मिलेगा: .0

आप सभी तीन अंक चाहते हैं: 0.ToString("0.00"); पैदा करता है: 0.00


टिप्पणियों से इस उत्तर में, आपका तर्क प्रतीत होता है,

इसे '0' दिखाना चाहिए, क्योंकि संख्यात्मक मान 0 है तो कोई भी खाली स्ट्रिंग क्यों देखना चाहेगा?

प्रतिक्रिया सरल है: आप कैसे इच्छा यह प्रदर्शित करने के लिए आप अपनी पसंद है। कस्टम प्रारूप तारों के लिए यही है। आपने अपनी आवश्यकताओं के लिए गलत प्रारूप स्ट्रिंग को चुना है

20

डिजिट प्लेसहोल्डर के बारे में प्रलेखन के अनुसार।

यदि प्रारूप स्वरूपित किया गया है तो उस स्थिति में एक अंक है जहां प्रारूप स्ट्रिंग में '#' दिखाई देता है, तो उस अंक को परिणाम स्ट्रिंग में कॉपी किया जाता है। अन्यथा, परिणाम स्ट्रिंग में उस स्थिति में संग्रहीत कुछ भी नहीं है। यह विनिर्देशक '0' वर्ण को कभी प्रदर्शित नहीं करता है यदि यह एक महत्वपूर्ण अंक नहीं है, भले ही '0' स्ट्रिंग में एकमात्र अंक है। यह '0' वर्ण प्रदर्शित करेगा यदि यह प्रदर्शित होने वाले नंबर में एक महत्वपूर्ण अंक है। "##" प्रारूप स्ट्रिंग मान को दशमलव से पहले निकटतम अंक पर गोल करने का कारण बनती है, जहां शून्य से घूर्णन हमेशा उपयोग किया जाता है। उदाहरण के लिए, के साथ "##" 34.5 स्वरूपण मूल्य 35.

में परिणाम होगा आप शून्य शून्य प्लेसहोल्डर

का उपयोग मूल्य स्वरूपित किया जा रहा च प्रदर्शित करने के लिए चाहते हैं, तो एक अंक है उस स्थिति में जहां प्रारूप स्ट्रिंग में '0' दिखाई देता है, तो उस अंक को परिणाम स्ट्रिंग में कॉपी किया जाता है। दशमलव बिंदु से पहले बाईं ओर '0' की स्थिति और दशमलव बिंदु के बाद दाएं '0' को परिणाम स्ट्रिंग में हमेशा मौजूद अंकों की श्रेणी निर्धारित करता है।
"00" विनिर्देशक मान को दशमलव से पहले निकटतम अंक पर गोल करने का कारण बनता है, जहां शून्य से घूर्णन हमेशा उपयोग किया जाता है। उदाहरण के लिए, "00" के साथ 34.5 स्वरूपित करने के परिणामस्वरूप 35.

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