c# - How can I strip zeros and decimal points off of decimal strings? -


निम्न कोड वर्तमान में आउटपुट करता है:

  12.1 12.100 12.1000 12.00 12 12.0000  

मैं इसे कैसे बदल सकता हूं, इसलिए यह आउटपुट करता है:

  12.1 12.1 12.1 12 12 12  

मठ। बात, लेकिन यह मुझे परिभाषित करता है कि कितने दशमलव स्थानों को मैं चाहता हूं, लेकिन मैं उन्हें ऊपर के रूप में चर होना चाहता हूं।

यदि कोई ऐसा करने का कोई गणितीय तरीका नहीं है, तो मैं शून्य और दशमलव स्ट्रिंग्स के दाहिनी ओर बंद करता है, लेकिन लगता है कि इस पर संभाल करने के लिए एक गणित का तरीका है।

  सिस्टम का उपयोग करना; System.Collections.Generic का उपयोग कर; नेमस्पेस test8834234 {सार्वजनिक वर्ग का कार्यक्रम {स्थैतिक शून्य मुख्य (स्ट्रिंग [] आर्ग्स) {सूची & lt; स्ट्रिंग & gt; दशकों एसएसट्रिंग = नई सूची & lt; स्ट्रिंग & gt; {"12.1", "12.100", "12.1000", "12.00", "12", "12.0000"}; फॉरचाव (डेसीमल्स एसएसटीआरिंग में विविध दशमलव एसएस स्ट्रिंग) {दशमलव दशमलव = दशमलव। पर्स (दशमलवएस्टस्ट्रिंग); Console.WriteLine (डीईसी); } कंसोल। रीडलाइन (); }}}}  

आप पैरामीटर के साथ दशमलव की टॉस्ट्रिंग भी उपयोग कर सकते हैं:

  स्ट्रिंग s = dec.ToString ("0. #");  

नोट: आपके कोड के साथ आपके पास अंतर्राष्ट्रीयकरण समस्या हो सकती है। जिस तरीके से आपने इसे कोडित किया है, वह उपयोगकर्ता के कंप्यूटर से संस्कृति की जानकारी का उपयोग करेगा, जिसमें दशमलव सेपरेटर के लिए के अलावा कुछ और हो सकता है। यह आपके प्रोग्राम को ऐसे उपयोगकर्ताओं के लिए गलत परिणाम देने का कारण हो सकता है जिनके पास हजारों विभाजक के लिए है।

यदि आप गारंटी देना चाहते हैं कि पार्स विधि हमेशा समान व्यवहार करती है, तो आप इसका उपयोग कर सकते हैं । यदि आप वास्तव में उपयोगकर्ता की संस्कृति सेटिंग्स के अनुसार स्ट्रिंग पार्स करना चाहते हैं, तो आप जो कर रहे हैं वह ठीक है।


Comments

Popular posts from this blog

objective c - iPhone and it's wireless area -

unix - Listing all shared memory segments used by a process on AIX5.3+ -

tsql - Correct sql/hql query (aggregate in where clause) -