Vb.net 从毫秒转换为日期时间
我使用了以下代码:Vb.net 从毫秒转换为日期时间,vb.net,visual-studio,Vb.net,Visual Studio,我使用了以下代码: Dim val = ( _ New DateTime( _ DateTimePicker1.Value.Year, _ DateTimePicker1.Value.Month, _ DateTimePicker1.Value.Day, _ CInt(TextBox1.Text), _ CInt(TextBox2.Text), _
Dim val = ( _
New DateTime( _
DateTimePicker1.Value.Year, _
DateTimePicker1.Value.Month, _
DateTimePicker1.Value.Day, _
CInt(TextBox1.Text), _
CInt(TextBox2.Text), _
0 _
) _
- _
New DateTime(1970, 1, 1, 0, 0, 0) _
).TotalMilliseconds
val = val + (CInt(TextBox2.Text) * 1000)
使用选定的输入日期和时间获取1970年1月1日起的毫秒数。有人知道如何将此值转换回我可以用来在DateTimePicker中显示日期的值,以及我可以在其他地方使用的小时和分钟吗?使用DateTime对象的AddMillimes方法,如下所示:
' Calculation of milleseconds
Dim val = (New DateTime(DateTimePicker1.Value.Year, DateTimePicker1.Value.Month, DateTimePicker1.Value.Day, CInt(TextBox1.Text), CInt(TextBox2.Text), 0) - New DateTime(1970, 1, 1, 0, 0, 0)).TotalMilliseconds
' Start with new date object as January 1st, 1970 and then add milliseconds calculated above
Dim dateJan1st1970 As New DateTime(1970, 1, 1, 0, 0, 0)
Dim dateNew As DateTime = dateJan1st1970.AddMilliseconds(val)
哇,这太复杂了:
Dim epoch As New DateTime(1970, 1, 1, 0, 0, 0)
Dim val = (DateTimePicker1.Value.AddSeconds(CInt(TextBox2.Text)) - epoch).TotalMilliseconds
我很困惑,您正在从DateTimePicker值创建一个date对象,然后查找日期与1970年1月1日(毫秒)之间的差异;只有这样,才能将其重新转换为日期,以便在其他地方显示?为什么?所以你想把1970-01-01到某个日期的毫秒数转换回DateTime?但是你现在有一个日期差,而不是日期。是否要显示输入到第一个日期选择器中的2013年第43年?我让他们向用户显示一系列值,其中包括该值。然后他们可以在以后的日期导入这个字符串并让它显示数据,我只需要一种方法来撤销毫秒转换。该值在其他地方的JavaScript中使用,其中日期的最低值是01/01/1970,甚至是.AddSeconds,因为这是他开始的,我想TimeSpan是用来计算持续时间的课程嗯。。。错过了其他文本框。不过,这样做更容易。