c语言 北京时间转换utc时间_UTC时间与北京时间相互转换

本文介绍了两种在C#中将北京时间转换为UTC时间以及UTC时间转换回北京时间的方法。通过TimeZone类获取时间差,使用DateTime的ToUniversalTime()和ToLocalTime()方法进行转换。同时提供了将时间戳与日期时间相互转换的辅助函数。
摘要由CSDN通过智能技术生成

第一种方法

时间戳是指格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)起至现在的总秒数。

public class HomeController : Controller

{

public ActionResult Index()

{

//本地时间(北京时间)

DateTime dt = Convert.ToDateTime("2016-06-11 23:59:59");

//TimeZone类表示时区,TimeZone.CurrentTimeZone方法:获取当前计算机的时区。

TimeZone tz = TimeZone.CurrentTimeZone;

//获取当前计算机的时区与utc时间的时间差(北京时间和utc时间相差8个小时)

TimeSpan ts = tz.GetUtcOffset(dt);

//将当前计算机所在时区的时间(即:北京时间) 转换成UTC时间

DateTime dtGMT = tz.ToUniversalTime(dt);

//将UTC时间转换成本地时间

DateTime localtime = tz.ToLocalTime(dtGMT);

return View();

}

}

第二种方法

public class HomeController : Controller

{

public ActionResult Index()

{

//本地时间(北京时间)

DateTime dt = Convert.ToDateTi

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值