我想將我的JSON格式化日期轉換爲C#DateTime變量。試圖將它與Convert.ToDateTime
將JSON日期轉換爲C#datetime變量
轉換( 「2016-01-15T11:44:52-07:00」)
是給我這個輸出
我無法找出它是否是一個正確的輸出或不是因爲我的輸入日期2016年1月15日,但輸出它是2016年1月16日。
如何將JSON日期值轉換爲C#日期值?
我想將我的JSON格式化日期轉換爲C#DateTime變量。試圖將它與Convert.ToDateTime
將JSON日期轉換爲C#datetime變量
轉換( 「2016-01-15T11:44:52-07:00」)
是給我這個輸出
我無法找出它是否是一個正確的輸出或不是因爲我的輸入日期2016年1月15日,但輸出它是2016年1月16日。
如何將JSON日期值轉換爲C#日期值?
看起來您當前的時區爲UTC +05:30
,因此Convert.ToDateTime
方法會將這些值添加到結果中,並生成1/16/2016 00:14:52
作爲值。
由於您的字符串有一個偏移量部分,我將它解析爲DateTimeOffset
而不是Datetime
。
var dto = DateTimeOffset.Parse("2016-01-15T11:44:52-07:00");
這將產生{15.01.2016 11:44:52 -07:00}
爲DateTimeOffset
。
不過既然你說這是使用JSON相關,這項技術應該有一些方法來分析它。最好是使用這些方法,但我不熟悉JSON。
你似乎有時區的問題。嘗試解析DateTimeStyles.RoundtripKind
using System.Globalization;
var s1 = "2016-01-15T11:44:52-07:00";
var date = DateTime.Parse(s1, CultureInfo.InvariantCulture, DateTimeStyles.RoundtripKind);