San*_*ock 49
如果您想利用本地计算机时区,可以使用myDateTime.ToUniversalTime()
从当地时间获取UTC时间或myDateTime.ToLocalTime()
将UTC时间转换为本地计算机的时间.
// convert UTC time from the database to the machine's time
DateTime databaseUtcTime = new DateTime(2011,6,5,10,15,00);
var localTime = databaseUtcTime.ToLocalTime();
// convert local time to UTC for database save
var databaseUtcTime = localTime.ToUniversalTime();
Run Code Online (Sandbox Code Playgroud)
如果您需要将时间从/转换为其他时区,您可以使用TimeZoneInfo.ConvertTime()
或TimeZoneInfo.ConvertTimeFromUtc()
.
// convert UTC time from the database to japanese time
DateTime databaseUtcTime = new DateTime(2011,6,5,10,15,00);
var japaneseTimeZone = TimeZoneInfo.FindSystemTimeZoneById("Tokyo Standard Time");
var japaneseTime = TimeZoneInfo.ConvertTimeFromUtc(databaseUtcTime, japaneseTimeZone);
// convert japanese time to UTC for database save
var databaseUtcTime = TimeZoneInfo.ConvertTimeToUtc(japaneseTime, japaneseTimeZone);
Run Code Online (Sandbox Code Playgroud)
Fra*_*yne 33
虽然DateTime.Kind属性没有setter,但静态方法DateTime.SpecifyKind创建一个具有指定的KindTime值的DateTime实例.
另外,有几个DateTime构造函数重载采用DateTimeKind参数
小智 7
您也可以尝试这一点,它很容易实现
TimeZone time2 = TimeZone.CurrentTimeZone;
DateTime test = time2.ToUniversalTime(DateTime.Now);
var singapore = TimeZoneInfo.FindSystemTimeZoneById("Singapore Standard Time");
var singaporetime = TimeZoneInfo.ConvertTimeFromUtc(test, singapore);
Run Code Online (Sandbox Code Playgroud)
更改要更改标准时间的文本.
使用TimeZone
C#的功能来实现.
归档时间: |
|
查看次数: |
84620 次 |
最近记录: |