VB.net ISo DateFormat

时间:2010-09-30 20:34:12

标签: vb.net

我在VB.net中有一个以ISO 8601格式存储的日期

'Date here is local time in germany   
Dim s As String = "2010-09-27T16:54:28+02:00"

Dim dt As DateTime
If Date.TryParse(s, dt) = True Then

End If

当我使用try to parse时,它会在我当地的时区显示日期,

如何获取日期

2010-9-27 4:54 PM以及GMT DATE?

1 个答案:

答案 0 :(得分:2)

日期不会在内部存储任何特定的表示。

您需要使用正确的DateTime格式字符串(customstandard)格式化以进行显示:

Dim s As String = "2010-09-27T16:54:28+02:00"

Dim dt As DateTime
If Date.TryParse(s, dt) = True Then
    Dim gmt as String = dt.ToUniversalTime().ToString("r", CultureInfo.InvariantCulture)
    Dim custom as String = dt.ToUniversalTime().ToString("yyyy-M-d h:mm tt", CultureInfo.InvariantCulture)
End If