我使用以下c#语法从月份获取月份名称,但我得到August
我只想要Aug
..
System.Globalization.DateTimeFormatInfo mfi = new
System.Globalization.DateTimeFormatInfo();
string strMonthName = mfi.GetMonthName(8).ToString();
任何建议......
答案 0 :(得分:309)
对于短月份名称,请使用:
string monthName = new DateTime(2010, 8, 1)
.ToString("MMM", CultureInfo.InvariantCulture);
西班牙语(“es”)文化的长/月份名称
string fullMonthName = new DateTime(2015, i, 1).ToString("MMMM", CultureInfo.CreateSpecificCulture("es"));
答案 1 :(得分:253)
对于缩写月份名称:“8月”
DateTimeFormatInfo.GetAbbreviatedMonthName Method (Int32)
返回指定月份的特定于文化的缩写名称 基于与当前DateTimeFormatInfo关联的文化 对象
string monthName = CultureInfo.CurrentCulture.DateTimeFormat.GetAbbreviatedMonthName(8)
完整月份名称:“八月”
DateTimeFormatInfo.GetMonthName Method (Int32)
返回基于指定月份的特定于文化的全名 与当前DateTimeFormatInfo对象关联的文化。
string monthName = CultureInfo.CurrentCulture.DateTimeFormat.GetMonthName(8);
答案 2 :(得分:83)
将GetMonthName
替换为GetAbbreviatedMonthName
,使其显示为:
string strMonthName = mfi.GetAbbreviatedMonthName(8);
答案 3 :(得分:12)
您想要GetAbbreviatedMonthName
答案 4 :(得分:8)
您可以通过以下方式获得此信息,
DateTimeFormatInfo mfi = new DateTimeFormatInfo();
string strMonthName = mfi.GetMonthName(8).ToString(); //August
现在,获取前三个字符
string shortMonthName = strMonthName.Substring(0, 3); //Aug
感谢。
答案 5 :(得分:7)
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
)
这应该有效。
答案 6 :(得分:2)
这应该从月份索引(1-12)
返回月份文本(1月-12月)Private Sub Worksheet_Change(ByVal Target As Range)
LastRow = Range("L4000").End(xlUp).Row
ActiveWorkbook.Worksheets("Endorsed Candidates").Sort.SortFields.Clear
ActiveWorkbook.Worksheets("Endorsed Candidates").Sort.SortFields.Add Key:= _
Range("A2:A" & LastRow), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption _
:=xlSortNormal
ActiveWorkbook.Worksheets("Endorsed Candidates").Sort.SortFields.Add Key:= _
Range("B2:B" & LastRow), SortOn:=xlSortOnValues, Order:=xlAscending, CustomOrder _
:="BSUH (September),Frimley (October),CWH (November),Kingston (December)", _
DataOption:=xlSortNormal
ActiveWorkbook.Worksheets("Endorsed Candidates").Sort.SortFields.Add Key:= _
Range("C2:C4000"), SortOn:=xlSortOnValues, Order:=xlAscending, CustomOrder _
:="Allen,Christine,Feri,Hubert,Paula", DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets("Endorsed Candidates").Sort
.SetRange Range("A2:L" & LastRow)
.Header = xlGuess
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
End Sub
答案 7 :(得分: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
答案 8 :(得分:1)
您也可以这样做以获取当前的月份:
string monthName = CultureInfo.CurrentCulture.DateTimeFormat.GetMonthName(DateTime.Now.Month);