我正在使用 ASP.NET Visual Basic。
我的数据库中有一个整数字段,我需要将其读取为日期,例如 20130813。但目前它说我无法转换为日期时间。
有没有办法将整数拆分为 DD、MM、YYYY,这样我什至可以将它们存储在变量中,然后用于创建日期。或者只是转换为日期的简单方法。
谢谢你的时间。
尝试这个:
Dim provider As CultureInfo = CultureInfo.CurrentCulture
Dim sData As String = "20130813"
Dim myDate As Date = Date.ParseExact(sData, "yyyyMMdd", provider)
如果需要,您可以轻松地将您的号码转换为字符串:
Dim myNum As Integer = 20130813
sData = myNum.ToString()
有关详细信息,请参阅MSDN 文档。
当您从数字开始时,您可以将其转换为字符串并使用 DateTime.TryParseExact,或者使用一些整数算术将其拆分:
Dim n As Integer = 20130813
Dim yr As Integer = n \ 10000
Dim mon As Integer = (n - 10000 * yr) \ 100
Dim d As Integer = n Mod 100
Dim dt As New DateTime(yr, mon, d)
Private Sub stringtodate(ByVal dateval As String)
Dim yy As String
Dim mm As String
Dim dd As String
Dim newdate As Date
yy = dateval.Substring(0, 4)
mm = dateval.Substring(4, 2)
dd = dateval.Substring(6, 2)
newdate =Convert.ToDateTime(dd & "/" & mm & "/" & yy)
MsgBox(newdate.ToString())
End Sub