將UTC/GMT時間轉換為本地時間我們正在為Web服務客戶端開發(fā)一個C#應用程序。這將在WindowsXPPC上運行。Web服務返回的字段之一是日期時間字段。服務器返回一個GMT格式的字段,即末尾有一個“Z”。但是,我們發(fā)現(xiàn).NET似乎做了某種隱式轉換,并且時間總是12小時。下面的代碼示例在一定程度上解決了這一問題,因為12小時的差異已經(jīng)消失,但它沒有考慮到新西蘭的夏令。CultureInfo ci = new CultureInfo("en-NZ");string date = "Web service date".ToString("R", ci);
DateTime convertedDate = DateTime.Parse(date);按此日期站點:UTC/GMT偏移量標準時區(qū):UTC/GMT+12小時夏令時:+1小時當前時區(qū)偏移:世界協(xié)調(diào)時/格林尼治時間+13小時我們?nèi)绾握{(diào)整以適應額外的時間?這能以編程的方式完成嗎?還是這是PC上的某種設置?
3 回答

jeck貓
TA貢獻1909條經(jīng)驗 獲得超7個贊
2012-09-19 01:27:30.000
, DateTime.Parse
DateTime
未指定 本土化 世界協(xié)調(diào)時
注 DateTimeOffset
.
DateTime convertedDate = DateTime.Parse(dateStr);var kind = convertedDate.Kind; // will equal DateTimeKind.Unspecified
DateTime convertedDate = DateTime.SpecifyKind( DateTime.Parse(dateStr), DateTimeKind.Utc);var kind = convertedDate.Kind; // will equal DateTimeKind.Utc
ToLocalTime
:
DateTime dt = convertedDate.ToLocalTime();
- 3 回答
- 0 關注
- 1082 瀏覽
添加回答
舉報
0/150
提交
取消