东八区指定时间换算时区

	let data="2021-10-28 15:30:33"
	function  format(date) {
        //获取当前时区值,比如北京为东八区则输进8,西5输入-5
        var offset = -new Date().getTimezoneOffset()/60;

        var targetTime = new Date(date);
        var utc = targetTime.getTime() + (-28800000); //targetTime.getTimezoneOffset()东八区=-28800000
        var actualTime = new Date(utc + (3600000*offset));

        var year = actualTime.getFullYear();
        var month = (actualTime.getMonth() + 1)>9?(actualTime.getMonth() + 1):"0"+(actualTime.getMonth() + 1);
        var day = actualTime.getDate()>9?actualTime.getDate():"0"+actualTime.getDate();
        var hour = actualTime.getHours()>9?actualTime.getHours():"0"+actualTime.getHours();
        var minute = actualTime.getMinutes()>9?actualTime.getMinutes():"0"+actualTime.getMinutes();
        var second = actualTime.getSeconds()>9?actualTime.getSeconds():"0"+actualTime.getSeconds();
        return year+"-"+month+"-"+day+" " + hour+":"+minute+":"+second; 
      }
      //或
      function  format(date) {
        //获取当前时区值,比如北京为东八区则输进8,西5输入-5
        var offset = -new Date().getTimezoneOffset()/60;

        // var times = date.split(" ")[1].split(":");
        // var now = new Date(date);
        var targetTime = new Date(date);
        var utc = targetTime.getTime() + (-28800000); 
        var actualTime = new Date(utc + (3600000*offset));

        var year = actualTime.getFullYear();
        var month = (actualTime.getMonth() + 1)>9?(actualTime.getMonth() + 1):"0"+(actualTime.getMonth() + 1);
        var day = actualTime.getDate()>9?actualTime.getDate():"0"+actualTime.getDate();
        var hour = actualTime.getHours()>9?actualTime.getHours():"0"+actualTime.getHours();
        var minute = actualTime.getMinutes()>9?actualTime.getMinutes():"0"+actualTime.getMinutes();
        var second = actualTime.getSeconds()>9?actualTime.getSeconds():"0"+actualTime.getSeconds();
        return year+"-"+month+"-"+day+" " + hour+":"+minute+":"+second; 
      }
在C#中获取八区时区的方法是通过使用`TimeZoneInfo`类来实现的。你可以使用`TimeZoneInfo.FindSystemTimeZoneById`方法来获取八区时区,然后使用`TimeZoneInfo.ConvertTimeFromUtc`方法将UTC时间转换为八区的本地时间。 下面是一段示例代码: ``` DateTime utcTime = DateTime.UtcNow; TimeZoneInfo easternZone = TimeZoneInfo.FindSystemTimeZoneById("China Standard Time"); DateTime easternTime = TimeZoneInfo.ConvertTimeFromUtc(utcTime, easternZone); ``` 在这个例子中,我们首先获取了当前的UTC时间,然后通过`FindSystemTimeZoneById`方法找到了八区时区信息,接着使用`ConvertTimeFromUtc`方法将UTC时间转换为八区的本地时间。 请注意,"China Standard Time"是八区时区标识符,在不同的操作系统中可能会有所不同。你可以根据你的操作系统选择正确的时区标识符。 使用上述代码,你就可以在C#中获取到八区的本地时间了。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [获取当前时间八区时间](https://blog.csdn.net/Gzigithub/article/details/125620559)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值