我需要从一个缩写获得一个月的数量:如何在vb.net中将MMM格式的月份转换为MM日期?
我有这样的:
Dim monthname as string = "Jun"
,我需要得到这个:
Dim monthnumber as integer = 6
我怎样才能得到呢?感谢
我需要从一个缩写获得一个月的数量:如何在vb.net中将MMM格式的月份转换为MM日期?
我有这样的:
Dim monthname as string = "Jun"
,我需要得到这个:
Dim monthnumber as integer = 6
我怎样才能得到呢?感谢
您可以使用ParseExact
做到这一点:
Dim monthname as string = "Jun"
Dim monthNumber as integer = DateTime.ParseExact(monthname , "MMM", CultureInfo.CurrentCulture).Month
或者,创建一个字典:
Dim months = New Dictionary(Of String, Integer) From
{{1, "Jan"}, {2, "Feb"}}, ...
Dim monthNumber = months(monthname)
您的第一个代码对我来说非常完美,感谢您的帮助 –
你可以尝试使用这个:
DateTime.ParseExact("Jun", "MMM", CultureInfo.InvariantCulture)
C#
var t = DateTime.ParseExact("Jun", "MMM", CultureInfo.InvariantCulture);
var monthNum = t.Month;
VB:
Dim t = DateTime.ParseExact("Jun", "MMM", CultureInfo.InvariantCulture)
Dim monthNum = t.Month
我测试的代码正常工作。请同时导入System.Globalization。
Imports System
Imports System.Globalization
Public Class Test
Public Shared Sub Main()
Dim monthname as string = "Jun"
Dim monthnumber as integer = DateTime.ParseExact(monthName, "MMM", CultureIn
fo.CurrentCulture).Month
System.Console.WriteLine(monthnumber)
End Sub
End Class
Sub Main()
MonthsAndNmubers.GetMonthNumber("Jan")
End Sub
Public Class MonthsAndNmubers
Private Shared ReadOnly monthsAndNumbers As IDictionary(Of String, Integer) = New Dictionary(Of String, Integer)() _
From {
{"Jan", 1}, _
{"Feb", 2}, _
{"Mar", 3}, _
{"Apr", 4}, _
{"May", 5}, _
{"Jun", 6}, _
{"Jul", 7}, _
{"Aug", 8}, _
{"Sep", 9}, _
{"Oct", 10}, _
{"Nov", 11}, _
{"Dec", 12} _
}
Public Shared Function GetMonthNumber(month As String) As Integer
Dim monthNumber As Integer = 0
monthsAndNumbers.TryGetValue(month, monthNumber)
Return monthNumber
End Function
End Class
http://stackoverflow.com/questions/3662292/converting-month-name-to-integer –
我只需要字符串月份名称转换为月份数,但没有通过完整的日期 –
你能告诉你如何将字符串转换为日期时间吗? – sr28