क्या कोई मुझे .NET ढांचे के भीतर Culture
और UICulture
के बीच अंतर पर थोड़ा और जानकारी दे सकता है? वे क्या करते हैं और कब उपयोग करें?संस्कृति और उइकल्चर के बीच क्या अंतर है?
उत्तर
Culture
संस्कृति-निर्भर डेटा (तिथियां, मुद्राएं, संख्याएं और इसी तरह) को कैसे प्रभावित करता है, इस पर प्रभाव डालता है। यहाँ कुछ उदाहरण हैं:
var date = new DateTime(2000, 1, 2);
var number = 12345.6789;
Thread.CurrentThread.CurrentCulture = new CultureInfo("de-DE");
Console.WriteLine(date); // 02.01.2000 00:00:00
Console.WriteLine(number.ToString("C")); // 12.345,68 €
Thread.CurrentThread.CurrentCulture = new CultureInfo("fr-CA");
Console.WriteLine(date); // 2000-01-02 00:00:00
Console.WriteLine(number.ToString("C")); // 12 345,68 $
Thread.CurrentThread.CurrentCulture = new CultureInfo("en-US");
Console.WriteLine(date); // 1/2/2000 12:00:00 AM
Console.WriteLine(number.ToString("C")); // $12,345.68
संस्कृति भी प्रभावित करता है उसी तरह से उपयोगकर्ता इनपुट को पार्स:
const string numberString = "12.345,68";
decimal money;
Thread.CurrentThread.CurrentCulture = new CultureInfo("de-DE");
money = decimal.Parse(numberString); // OK!
Thread.CurrentThread.CurrentCulture = new CultureInfo("en-US");
money = decimal.Parse(numberString); // FormatException is thrown, TryParse would return false
मामलों में जहां पार्स सफल होता है से सावधान रहें, लेकिन परिणाम आप क्या उम्मीद करेंगे नहीं है यह होना था।
const string numberString = "12.345";
decimal money;
Thread.CurrentThread.CurrentCulture = new CultureInfo("de-DE");
money = decimal.Parse(numberString); // 12345
Thread.CurrentThread.CurrentCulture = new CultureInfo("en-US");
money = decimal.Parse(numberString); // 12.345, where the . is a decimal point
UICulture
को प्रभावित करता है जो संसाधन फ़ाइल (संसाधन। लैंग .resx) अपने आवेदन के द्वारा करने के लिए लोड किया जा रहा है।
इसलिए जर्मन संसाधनों को लोड करने के लिए (संभावित रूप से स्थानीयकृत टेक्स्ट) आप जर्मन संस्कृति में UICulture
सेट करेंगे और जर्मन स्वरूपण प्रदर्शित करेंगे (संसाधनों को लोड किए जाने वाले किसी भी प्रभाव के बिना) आप Culture
सेट करेंगे।
यूआईसील्चर संपत्ति प्रत्येक वेब ब्राउज़र के लिए बदल सकती है, जबकि संस्कृति स्थिर रहता है।
संस्कृति मूल्य केवल विशिष्ट संस्कृतियों पर सेट किया जा सकता है, जैसे एन-यूएस या एन-जीबी। यह एन के लिए उपयोग करने के लिए सही मुद्रा प्रतीक की पहचान करने की आवश्यकता को रोकता है, जहां एन-यूएस और एन-जीबी के अलग-अलग मुद्रा प्रतीकों हैं। उपयोगकर्ता अपने ब्राउज़र में यूआई संस्कृति और संस्कृति सेट कर सकते हैं।
@ वाचे के अद्भुत स्पष्टीकरण के अलावा विचार करने के लिए बस एक छोटा सा मामला: आप यूआईसील्चर और संस्कृति दोनों (पेज स्तर और एप्लिकेशन स्तर) पर सेट कर सकते हैं।
उन्हें आवेदन के स्तर पर सेट करने के लिए, बस web.config
उदा में भूमंडलीकरण सत्र जोड़ने <globalization uiCulture="es" culture="es-MX" />
और उनमें पेज स्तर है, जो एक विशिष्ट (व्यक्तिगत) पृष्ठ पर जोड़ने के लिए अच्छा है पर स्थापित करने के लिए, सेट संस्कृति और UICulture @ पेज निर्देश
उदा में विशेषताएं <%@ Page UICulture="es" Culture="es-MX" %>
Culture and UICulture
मान दो अक्षर का तार के जोड़े हैं, पहली भाषा और क्षेत्र को परिभाषित करने के लिए दूसरे को परिभाषित करने के लिए है। उदाहरण:
यहाँ en-GB
en
का प्रतिनिधित्व करता है English
और GB
यहाँ Great Briton
en-US
का प्रतिनिधित्व करता है en
English
प्रतिनिधित्व करता है और US
तिथि, समय की तरह संस्कृति निर्भर कार्यों के लिए United States
उपयोग Culture
प्रतिनिधित्व करता है। और UICulture
सही संसाधन फ़ाइल लोडिंग के लिए है।
- 1. # {} $ {} और% {} के बीच क्या अंतर है?
- 2. [अपरिभाषित] और [,] के बीच क्या अंतर है?
- 3. $ और $$ के बीच क्या अंतर है?
- 4. के बीच क्या अंतर है:। और: आर !?
- 5. भिन्नता और '-' के बीच क्या अंतर है?
- 6. "$^एन" और "$ +" के बीच क्या अंतर है?
- 7. के बीच क्या अंतर है?
- 8. अंतर और कहां के बीच क्या अंतर है?
- 9. कंप्यूटर विज्ञान और सॉफ्टवेयर इंजीनियरिंग के बीच क्या अंतर है?
- 10. file_get_contents और fread बीच क्या अंतर है
- 11. क्या बीच का अंतर है :: और ::: स्काला
- 12. "। +" और "। +?" के बीच अंतर
- 13. Invariant संस्कृति क्या है?
- 14. $ {} और # {} के बीच अंतर क्या हैं?
- 15. PHP के बीच क्या अंतर है और इसमें शामिल है?
- 16. अपवाद के .TOString() और मैसेज के बीच क्या अंतर है?
- 17. 7zip के 7z.sfx और 7zsd.sfx के बीच क्या अंतर है?
- 18. डीएल के फाइलवर्सन और उत्पादवर्जन के बीच क्या अंतर है?
- 19. UIImageView के फ्रेम और सीमाओं के बीच क्या अंतर है?
- 20. फ़ायरबग के console.log() और console.debug() के बीच क्या अंतर है?
- 21. पैरामीटर परिभाषाओं के बीच अंतर (प्रकार और नाम), और (प्रकार * नाम) के बीच अंतर क्या हैं?
- 22. ओरिएंटब संस्करणों के बीच क्या अंतर है?
- 23. एन्कोड/डीकोड के बीच क्या अंतर है?
- 24. os.popen() विधियों के बीच क्या अंतर है?
- 25. MATLAB में & &&& के बीच क्या अंतर है?
- 26. ऑब्जेक्ट और * के बीच अंतर?
- 27. इन कार्यों के बीच क्या अंतर है?
- 28. applicationDidReceiveMemoryWarning, didReceiveMemoryWarning के बीच क्या अंतर है?
- 29. इन कार्यों के बीच क्या अंतर है
- 30. window.innerWidth window.outerWidth के बीच क्या अंतर है?
जिसका अर्थ है कि आप अंग्रेजी लेबल और यूआई (अंग्रेजी यूआईसील्चर), और नारंगी मुद्रा, तिथि, समय, और संख्या स्वरूपण (नारंगी संस्कृति।) कर सकते हैं, विंडोज-शब्दों में, मेनू के लिए एक भाषा पैक स्थापित करने के बारे में सोचें और संवाद बॉक्स (यूआईसील्चर), लेकिन नारियल क्षेत्रीय सेटिंग्स (संस्कृति।) –
के साथ चल रहा है इसके प्रभावों पर जोर देने के लिए: यहां तक कि यदि आप किसी उपयोगकर्ता की भाषा का समर्थन नहीं करते हैं, तो सुनिश्चित करें कि आप स्वरूपण के लिए अपनी संस्कृति का समर्थन करते हैं! मैंने गलतियों को देखा है जहां एक ऐप संस्कृति और भाषा दोनों के लिए "एन-यूएस" पर वापस आ जाता है, जब इसे केवल भाषा के लिए फॉलबैक की आवश्यकता होती है। – ToolmakerSteve
एक संपूर्ण 'संस्कृतिइन्फो' ऑब्जेक्ट का उपयोग केवल संसाधन फ़ाइल को निर्धारित करने के लिए क्या है जहां 'स्ट्रिंग' पर्याप्त होगा? (उदा। 'फ्रेमवर्क एलिमेंट' की 'भाषा' संपत्ति) – Wouter