Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
VB.net输出带时区和偏移量的日期时间_Vb.net_Date Formatting - Fatal编程技术网

VB.net输出带时区和偏移量的日期时间

VB.net输出带时区和偏移量的日期时间,vb.net,date-formatting,Vb.net,Date Formatting,我希望构造一个DateTime,在Visual Basic中如下所示: 2017年8月23日星期三10:00:00 GMT+0530 任何人都可以建议如何构建一个日期时间信息,其中时区信息也可以如上所示?您可以执行以下操作 Dim dt as DateTime = DateTime.UtcNow Dim output as String = dt.ToLocalTime().ToString("MMM dd, yyyy HH:mm:ss tt ""GMT"" zzz") Console.Writ

我希望构造一个
DateTime
,在Visual Basic中如下所示:

2017年8月23日星期三10:00:00 GMT+0530


任何人都可以建议如何构建一个
日期时间
信息,其中时区信息也可以如上所示?

您可以执行以下操作

Dim dt as DateTime = DateTime.UtcNow
Dim output as String = dt.ToLocalTime().ToString("MMM dd, yyyy HH:mm:ss tt ""GMT"" zzz")
Console.WriteLine(output) 'Outputs Aug 23, 2017 11:16:29 AM GMT +01:00
有关详细信息,请参阅。

日期时间具有DateTimeKind.Local、DateTimeKind.Utc或DateTimeKind.Unspecified中的一个,因此,尽管它具有一些时区信息,但其限制太大,无法指定另一个偏移量

A可以保留其他偏移,因此它可能更适合您的目的:

Module Module1

    Sub Main()
        Dim hereAndNow = DateTime.Now
        Dim utc = DateTime.UtcNow
        Dim noTzi = Date.SpecifyKind(utc, DateTimeKind.Unspecified)

        Dim inIndia As New DateTimeOffset(noTzi, TimeSpan.FromHours(5.5))

        Console.WriteLine(hereAndNow.ToString("yyyy-MM-dd HH:mm:ss K"))
        Console.WriteLine(utc.ToString("yyyy-MM-dd HH:mm:ss K"))
        Console.WriteLine(inIndia.ToString("yyyy-MM-dd HH:mm:ss 'GMT' K"))

        Console.ReadLine()

    End Sub

End Module
产出:

2017-08-23 11:36:55+01:00
2017-08-23 10:36:55 Z
2017-08-23 10:36:55 GMT+05:30

我必须将DateTime变量
utc
的种类设置为
DateTimeKind.Unspecified
才能在DateTimeOffset构造函数中使用它


您应该使用来显示时区信息。

您希望在其中指定时区(标题中的“构造”),还是仅显示带有日期时间的时区?