2012-02-06 10 views
34

मेरे पास नया XmlDocument ऑब्जेक्ट है, i.g. xml मेरे प्रोग्राम के दौरान बनाया गया है ...संख्यात्मक मानों में अल्पविराम के बजाय डॉट सेट करें

मैं चाहता हूं कि बनाए गए xml में सभी संख्यात्मक मान डिफ़ॉल्ट रूप से अल्पविराम के बजाय डॉट प्रतीक के साथ थे।

क्या मैं इसे एक बार घोषित करने के लिए कुछ कर सकता हूं, हर दशमलव मान को पार्स नहीं करना?

आईई। शुरुआत में कहीं कम कॉमा के बजाय इस डॉट को सेट अप करने के लिए और अंत तक इस बारे में चिंता न करें?

+0

आप XML में एक दशमलव डॉट चाहते हैं, लेकिन एक दशमलव उपयोग करना चाहते हैं या आप विश्व स्तर पर एक संस्कृति दशमलव विभाजक के रूप डॉट का उपयोग करता है करने के लिए वर्तमान संस्कृति को बदल सकते हैं उपयोगकर्ताओं को मूल्य प्रदर्शित करते समय अल्पविराम, आपको इसे स्थान पर निर्दिष्ट करना होगा। "Xml में केवल डॉट का उपयोग करें" सेटिंग नहीं है। –

उत्तर

73

इस प्रयास करें::

System.Globalization.CultureInfo customCulture = (System.Globalization.CultureInfo)System.Threading.Thread.CurrentThread.CurrentCulture.Clone(); 
customCulture.NumberFormat.NumberDecimalSeparator = "."; 

System.Threading.Thread.CurrentThread.CurrentCulture = customCulture; 
+0

धन्यवाद! इससे मुझे भी मदद मिली –

+0

धन्यवाद .. मैं इसके लिए भी खोज कर रहा था .. – Divya

+1

क्यों न केवल वर्तमान संस्कृति में नंबर डेसिमलसेपरेटर असाइन करें? – Brent

7

Decimal.ToString(..)System.Globalization.CultureInfo.InvariantCulture के साथ एक पैरामीटर लागू की तरह उपयोग करें।

या यदि आप इसे globaly करना चाहते हैं,

CurrentCulture उपयोग करते हैं, हमेशा Invariant एक करने के लिए सेट करने के लिए Applicaton.CurrentCulture संपत्ति का उपयोग करके।

+0

आवेदन सेट करना। कंटेंटकल्चर ने मेरे लिए काम नहीं किया। – Ted

17

आप अपने संख्यात्मक मानों को स्ट्रिंग में बदलने के लिए value.ToString(CultureInfo.InvariantCulture) का उपयोग कर सकते हैं।

Thread.CurrentThread.CurrentCulture = CultureInfo.GetCultureInfo("en-US"); 
+0

'value.ToString (CultureInfo.InvariantCulture) 'वर्तमान में काम नहीं करता है: https://msdn.microsoft.com/en-us/library/29dxe1x2(v=vs.100).aspx – Jonas

+1

@ जोनास, जो लिंक आपने इंगित किया है 'स्ट्रिंग के बारे में है। ToString (IFormatProvider)'। इस पैरामीटर "आरक्षित" के बारे में हिस्सा अन्य प्रकारों पर लागू नहीं होता है, केवल स्ट्रिंग –

+1

मेरे संस्करण (.NET 4.5) में यह 'CultureInfo.GetCultureInfo ("en-US") है। अच्छी तरह से काम। – itmuckel

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

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