【发布时间】:2016-04-25 10:59:07
【问题描述】:
我想将印度 DateTime 对象转换为东部 DateTime 对象。意味着我想更改特定 DateTime 对象的时区。为此,我编写了以下代码:
string easternZoneId = "Eastern Standard Time";
TimeZoneInfo easternZone = TimeZoneInfo.FindSystemTimeZoneById(easternZoneId);
string indianZoneId = "India Standard Time";
TimeZoneInfo indianZone = TimeZoneInfo.FindSystemTimeZoneById (indianZoneId);
DateTime d = TimeZoneInfo.ConvertTime (DateTime.Today, indianZone, easternZone);
当我尝试运行此语句时,控制台出现异常。
如何运行这段代码?我想把我的时间转换成东部时间。
编辑:现在我正在 Unity 编辑器中运行我的代码。我有 iMac 系统。 我想为 iPhone 设备运行这段代码。
【问题讨论】:
-
你真的确定你的系统在
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Time Zones的注册表键中有那些id吗?你有没有使用过GetSystemTimeZones方法并检查结果?你的环境/平台是什么? -
@SonerGönül,我没有使用 GetSystemTimeZones。我可以在 iPhone 设备上使用上述代码吗?
-
也许你应该添加你正在使用 Mono 的平台。
-
如果 DayTime.Today 在东部时区被调用,那么它将根据哪个时区返回数据?