माह संख्या से माह का नाम प्राप्त करें


254

संभव डुप्लिकेट:
सी # में मंथनाम कैसे प्राप्त करें?

मैंने महीने का नाम पाने के लिए निम्नलिखित c # सिंटैक्स का उपयोग किया है, लेकिन मैं Augustकेवल मुझे ही चाहता हूं Aug

System.Globalization.DateTimeFormatInfo mfi = new 
System.Globalization.DateTimeFormatInfo();
string strMonthName = mfi.GetMonthName(8).ToString();

कोई उपाय...


3
एक तरफ से .GetMonthName (int) स्ट्रिंग आप देख रहे हैं वापस नहीं है, यह है एक स्ट्रिंग वापसी, इसलिए .ToString () अनावश्यक है
Daved

1
बस जोड़ना आसान नहीं होगा। Substring (0,3)
फेडेरिको नवरेट

जवाबों:


349

छोटे महीने के लिए उपयोग नाम:

string monthName = new DateTime(2010, 8, 1)
    .ToString("MMM", CultureInfo.InvariantCulture);

स्पैनिश ("एस") संस्कृति के लिए लंबे / पूरे महीने के नाम

string fullMonthName = new DateTime(2015, i, 1).ToString("MMMM", CultureInfo.CreateSpecificCulture("es"));

अगर मुझे "अगस्त" चाहिए तो मैं ऊपर दिए गए कोड का उपयोग कैसे करूंगा? पूरे महीने का नाम?
अल्बर्ट लौर

25
@ User6675636b20796f7521string monthName = new DateTime(2010, 8, 1) .ToString("MMMM", CultureInfo.InvariantCulture);
रॉबर्ट फ्रिक

यह: "स्ट्रिंग s = नया दिनांक समय (1958, महीना, 1) .TStString (" MMMM ", CultureInfo.InvariantCulture ());" मुझे देता है, "गैर-अदृश्य सदस्य 'System.Globalization.CultureInfo.InvariantCulture' को एक विधि की तरह इस्तेमाल नहीं किया जा सकता है।"
बी क्ले शैनन

बी क्ले शैनन जोड़ने () के आसपास (नया दिनांक समय (1958, माह, 1))
परमाणु मीठा

2
यह उत्तर ओपी प्रश्न की तरह डेटाइम के बजाय एक महीने की संख्या से काम करने के लिए सबसे अच्छा आईएमएचओ नहीं है। लेज़ वी। कार्लसन का उत्तर छोटे महीने के नाम के लिए अधिक सीधा है। और अपनी स्थानीय संस्कृति में महीने का नाम पाने के लिए, CharithJ उत्तर की तरह CultureInfo.CurrentCulture का उपयोग करें।
AFract

290

संक्षिप्त माह के नाम के लिए: "अगस्त"

DateTimeFormatInfo.GetAbirectatedMonthName विधि (Int32)

वर्तमान DateTimeFormatInfo ऑब्जेक्ट से संबंधित संस्कृति के आधार पर निर्दिष्ट महीने के संस्कृति-विशिष्ट संक्षिप्त नाम देता है।

string monthName = CultureInfo.CurrentCulture.DateTimeFormat.GetAbbreviatedMonthName(8)

पूरे महीने के नाम के लिए: "अगस्त"

DateTimeFormatInfo.GetMonthName विधि (Int32)

वर्तमान DateTimeFormatInfo ऑब्जेक्ट से संबंधित संस्कृति के आधार पर निर्दिष्ट महीने का संस्कृति-विशिष्ट पूरा नाम देता है।

string monthName = CultureInfo.CurrentCulture.DateTimeFormat.GetMonthName(8);

2
GetMonthName पूरे महीने का नाम वापस करें। अगर आपको JAN, FEB, आदि के रूप में इसकी आवश्यकता है .. तो आप var month = 10 का उपयोग कर सकते हैं; string monthName = new DateTime (2014, महीना, 1) ।TStString ("MMM", CultureInfo.InvariantCulture) .ToUpper ();
दिमित्री पावलोव

3
@DmitryPavlov GetAbbreviatedMonthName()ऐसा करने का एक बेहतर तरीका है।
NickG

2
DateTimeFormatInfo DateTimeFormat (कम से कम .net 4.6 में) होना चाहिए
TravisWhidden

दूसरा विकल्प मेरे लिए काम करता था, हालाँकि मैंने GetCultureInfo("en-GB")इसके बजाय इसका इस्तेमाल किया CurrentCultureथा क्योंकि मैं यह सुनिश्चित करना चाहता था, कि मेरे महीने का नाम हमेशा अंग्रेजी में होगा
मौरिस क्लीमेक

यह सबसे अच्छा जवाब होना चाहिए। मेरा दिन बचाया। धन्यवाद।
महमूद ईडरस



11

आप इसे निम्नलिखित तरीके से प्राप्त कर सकते हैं,

DateTimeFormatInfo mfi = new DateTimeFormatInfo();
string strMonthName = mfi.GetMonthName(8).ToString(); //August

अब, पहले तीन वर्ण प्राप्त करें

string shortMonthName = strMonthName.Substring(0, 3); //Aug

9
System.Globalization.CultureInfo.CurrentCulture.DateTimeFormat.GetMonthName(4)

यह विधि वापस आती है April

यदि आपको कुछ विशेष भाषा की आवश्यकता है, तो आप जोड़ सकते हैं:

<system.web>
    <globalization culture="es-ES" uiCulture="es-ES"></globalization>
     <compilation debug="true"
</system.web>

या आपकी पसंदीदा भाषा।

उदाहरण के लिए, es-ESसंस्कृति के साथ :

System.Globalization.CultureInfo.CurrentCulture.DateTimeFormat.GetMonthName(4)

यह दिखाता है: Abril

रिटर्न: Abril(स्पेनिश में, क्योंकि, हमने culture as es-ESअपनी webconfigफ़ाइल में कॉन्फ़िगर किया है , अन्यथा, आपको मिलेगा April)

वह काम करना चाहिए।


5

इस महीने सूचकांक (1-12) से महीने का पाठ (जनवरी - दिसंबर) वापस आ जाना चाहिए

int monthNumber = 1; //1-12  
string monthName = new DateTimeFormatInfo().GetMonthName(monthNumber);

1
कृपया कुछ अतिरिक्त जानकारी प्रदान करें। बस कोड नहीं
ochs.tobi

1
var month = 5;
var cultureSwe = "sv-SE";
var monthSwe = CultureInfo.CreateSpecificCulture(cultureSwe).DateTimeFormat.GetAbbreviatedMonthName(month);
Console.WriteLine(monthSwe);

var cultureEn = "en-US";
var monthEn = CultureInfo.CreateSpecificCulture(cultureEn).DateTimeFormat.GetAbbreviatedMonthName(month);
Console.WriteLine(monthEn);

उत्पादन

maj
may
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.