DateTime.日期(长值)



我已经花了好几个小时仍然无法理解:

Dim unix_time_at_midnight As Long
DateTime.DateFormat = "MM/dd/yyyy"   
unix_time_at_midnight = DateTime.DateParse(DateTime.Date(unix_time*1000))/1000

,其中unix_time_at_midnight和unix_time都是长值。我理解DateTime.DateParse除了字符串,并将其转换为日期时间。(DateTime.Date(unix_time*1000))/1000返回什么?它在Java中的等价是什么?要求是获得自GMT午夜以来的秒数,我已经成功地在Java中实现了它。然而,我想理解这行用VB.net编写的代码

编辑:这个方法是用Basic4Android编写的,可能比vb.net构成了更多的库。然而,我已经研究了每一个细节,但无法理解。如果你能详细说明的话,我将不胜感激。

看这个:

DateTime.Date(unix_time*1000)

文档说:

Date (Ticks As Long) As String

返回日期的字符串表示形式(存储为刻度)。日期格式可以通过关键字DateFormat设置。

那部分返回一个字符串表示日期。

然后使用DateTime.DateParse,文档如下:

DateParse (Date As String) As Long

解析给定的日期字符串并返回其刻度表示。


总的来说,这似乎是将刻度乘以1000,转换为不包含小时信息的字符串,该字符串被解析回除以1000的刻度。

需要注意的重要一点是,前面行上设置的DateFormat只包含日期格式,没有小时/分钟/秒和更小的时间单位。这意味着返回的字符串实际上代表该日期的午夜。

相关内容

  • 没有找到相关文章

最新更新