当前位置: 首页 > news >正文

go 时间转时间戳的时区设置问题

昨天遇到一个问题,在完成时间转换时间戳,在后续测试中发现转换后的时间戳转成时间后,时间发生错误,时间和转换时间不一致问题

如下:

package mainimport ("fmt""time"
)func main() {Start := "2024-08-07 14:15:13"End := "2024-08-08 14:15:13"Layout := "2006-01-02 15:04:05" // 格式StartTime, err := time.Parse(Layout, Start)if err != nil {return}EndTime, err := time.Parse(Layout, End)if err != nil {return}duration := EndTime.Sub(StartTime)Hours := uint(duration.Hours())// 获取Unix时间戳(秒)Startstamp := StartTime.Unix()Endstamp := EndTime.Unix()msg := fmt.Sprintf("hours: %d, start: %d, end: %d", Hours, Startstamp, Endstamp)print(msg)
}结果:hours: 24, start: 1723040113, end: 1723126513

time.Parse函数可以用来将时间字符串按照指定的布局解析成time.Time类型,但是它默认使用UTC时区,所以转换成时间戳在转成时间和实际相差8小时,需要 time.LoadLocation设置时区,如下:

package mainimport ("fmt""time"
)func main() {Start := "2024-08-07 14:15:13"End := "2024-08-08 14:15:13"Layout := "2006-01-02 15:04:05" // 格式locationName := "Asia/Shanghai"// 根据时区名称加载时区location, err := time.LoadLocation(locationName)if err != nil {fmt.Println("时区加载失败:", err)return}StartTime, err := time.ParseInLocation(Layout, Start, location)if err != nil {return}EndTime, err := time.ParseInLocation(Layout, End, location)if err != nil {return}duration := EndTime.Sub(StartTime)Hours := uint(duration.Hours())// 获取Unix时间戳(秒)Startstamp := StartTime.Unix()Endstamp := EndTime.Unix()msg := fmt.Sprintf("hours: %d, start: %d, end: %d", Hours, Startstamp, Endstamp)print(msg)
}结果: hours: 24, start: 1723011313, end: 1723097713

相关文章:

go 时间转时间戳的时区设置问题

昨天遇到一个问题,在完成时间转换时间戳,在后续测试中发现转换后的时间戳转成时间后,时间发生错误,时间和转换时间不一致问题 如下: package mainimport ("fmt""time" )func main() {Start : &q…...

MySQL 常见日志清理策略

前言: MySQL 数据库服务器使用多种类型的日志来记录操作和事件,这对于故障诊断、审计和性能分析非常重要。然而,这些日志文件会随着时间的推移而不断增长,可能会占用大量的磁盘空间。因此,定期清理这些日志是必要的&a…...

3大管人绝招让你的手下心服口服

3大管人绝招让你的手下心服口服 一:差异化管理,玩弄人性 谁赞成,谁反对,看清楚谁顺从自己,谁反对自己之后,接下来要做的便是区别对待。 给听话的下属最好的资源、最轻松简单的工作、最高的待遇&#xf…...

useImperativeHandle 是什么?你可以理解为 vue3 的 expose

useImperativeHandle 确实类似于 Vue 3 的 expose,两者都用于控制子组件向父组件暴露的接口。 在 React 中,useImperativeHandle 需要与 forwardRef 一起使用,原因如下: 转发引用:forwardRef 允许父组件将 ref 传递给…...

《Techporters架构搭建》-Day05 属性校验

属性校验 前言Validated基础用法集合校验分组校验嵌套校验自定义校验器 源码地址 前言 在项目开发过程中,经常遇到需要对传递的参数进行校验,比如某个参数字段是否为空、值的取值是否在约定范围、格式是否合法等等,最原始的写法,…...

HTTP的场景实践

HTTP的场景实践:任选一个浏览器,对于其涉及的请求中的缓存策略展开具体分析 1. 强缓存: Cache-Control用于指定缓存的最长有效时间。 Expires用于指定资源过期的日期。 2. 协商缓存: ETag用于标识资源的唯一标识符,…...

MySQL:表的设计原则和聚合函数

所属专栏:MySQL学习 💎1. 表的设计原则 1. 从需求中找到类,类对应到数据库中的实体,实体在数据库中表现为一张一张的表,类中的属性对应着表中的字段 2. 确定类与类的对应关系 3. 使用SQL去创建具体的表 范式&#xff1…...

介绍springmvc-水文

Spring MVC 是一个基于 Java 的开源 Web 框架,它是 Spring Framework 的一部分。Spring MVC 提供了一个架构,用于开发灵活、可扩展的 Web 应用程序。 Spring MVC 的主要特点包括: 基于模型-视图-控制器(MVC)的架构&am…...

uni-app学习笔记

一、下载HBuilder https://www.dcloud.io/hbuilderx.html 上述网址下载对应版本,下载完成后进行解压,不需要安装,解压完成后,点击HBuilder X.exe文件进行运行程序 二、创建uni-app项目 此处我是按照文档创建的uni-ui项目模板…...

Windows Server修改远程桌面端口

新建入站规则 填写端口 允许连接 修改远程桌面端口 winR打开注册表 计算机\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\Wds\rdpwd\Tds\tcp修改PortNumber为新端口 计算机\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\Wi…...

界面组件Kendo UI for Vue 2024 Q2亮点 - 发布一系列新组件

随着最新的2024年第二季度发布,Kendo UI for Vue为应用程序开发设定了标准,包括生成式AI集成、增强的设计系统功能和可访问的数据可视化。新的2024年第二季度版本为应用程序界面提供了人工智能(AI)提示,从设计到代码的生产力增强、可访问性改…...

达梦数据库 逻辑备份还原

达梦的逻辑备份还原 1.背景2.要求3.实验步骤3.1 相关术语3.2 dexp逻辑导出3.2.1 使用dexp工具3.2.2 dexp相关参数含义3.2.3 四种级别导出3.2.3.1 FULL3.2.3.2 OWNER3.2.3.3 SCHEMAS3.2.3.4 TABLES 3.2.4 使用范例3.2.4.1 环境准备3.2.4.2 dexp逻辑导出 3.3 dimp逻辑导入3.3.1 使…...

Stable Diffusion绘画 | 图生图-上传重绘蒙版

上传重绘蒙版,可以弥补局部重绘的缺点,能够更精细的修改画面中的指定区域 使用PS制作的蒙版图片为耳朵下方区域,可以为图片中的女生带上不同款式的耳环。 参数配置: 调整提示词: 生成图片如下所示: 调整提…...

打开Office(word、excel、ppt)显示操作系统当前的配置不能运行此应用程序最全解决方案!

我以前用过分区助手把office从c盘挪到d盘了,从那以后office就用不了了,然后我就删了(貌似没删干净)。 最近由于有使用word的需求,所以我从学校官网找到正版软件的安装包,按照步骤重新卸载电脑中office残留…...

猫头虎 分享已解决Bug || TypeError: Cannot read property ‘map‘ of undefined 解决方案

🐯 猫头虎 分享已解决Bug || TypeError: Cannot read property map of undefined 解决方案 摘要: 今天猫头虎带大家深入探讨在前端开发中常见的一个令人头疼的问题:TypeError: Cannot read property map of undefined。这个错误通常出现在我…...

大模型快速部署,以浪潮源2.0为例

step1: 申请PAI-DSW试用 step2:魔塔社区授权 由于本地授权一直失败,于是采用了魔塔免费平台实例进行学习。 搭建好之后,打开就有相关页面了: demo搭建: 按照官方提示的步骤进行搭建,内容如下:…...

Python知识点:使用FastAI进行快速深度学习模型构建

使用FastAI构建深度学习模型非常方便,尤其是对于快速原型开发和实验。以下是一个使用FastAI构建深度学习模型的完整示例,涵盖数据准备、模型训练和评估。 安装依赖 首先,确保你安装了FastAI库和其他必要的库: pip install fast…...

Nginx配置全局https

Nginx配置全局https 要在 Nginx 中配置将 HTTP (80 端口) 请求重定向到 HTTPS (443 端口),可以在 Nginx 的配置文件中添加以下配置。假设你已经配置好了 HTTPS 相关的证书和密钥。 打开你的 Nginx 配置文件,通常是 /etc/nginx/nginx.conf。 在配置文件…...

DBAPI 如何对SQL查询出的日期字段进行统一格式转换

DBAPI 如何对SQL查询出的日期字段进行统一格式转换 mysql有一张订单表,有两个datetime类型的字段create_time update_time 新建一个API,SQL内容是查询所有数据 访问API发现日期字段默认返回时间戳格式 如果修改成自己想要的年月日格式,就要使…...

C:每日一题:字符串左旋

题目:实现一个函数,可以实现字符串的左旋 例如:ABCD左旋一个字符就是BCDA;ABCD左旋两个字符就是CDAB; 1、解题思路: 1.确定目标旋转k个字符,我们要获取字符串的长度 len,目的是根…...

3步颠覆《流放之路》角色构建:从数据混乱到精准规划的实战革命

3步颠覆《流放之路》角色构建:从数据混乱到精准规划的实战革命 【免费下载链接】PoeCharm Path of Building Chinese version 项目地址: https://gitcode.com/gh_mirrors/po/PoeCharm 当你在《流放之路》中第5次洗练装备属性却仍未达到预期效果,当…...

自动化内容审核:OpenClaw+Qwen3-4B-Thinking搭建个人防火墙

自动化内容审核:OpenClawQwen3-4B-Thinking搭建个人防火墙 1. 为什么需要个人内容防火墙 作为一个长期活跃在社交媒体平台的内容创作者,我最近遇到了一个棘手的问题。某天深夜发布的一条科普视频,因为背景音乐中出现了某段敏感旋律&#xf…...

C++复习录

1.命名空间 namespace nn{int a; } //名字空间指令 using namespace nn;//从这行代码开始,nn中的标识符在当前作用域可见(位于可见表)//名字空间声明 using nn::a;//从这行代码开始,nn中的a引入当前作用域(相当于定义,位于定义表) gcc/g++针对每个函数都和制作两张表,…...

C++的移动语义陷阱:右值引用误用导致的问题

C的移动语义陷阱:右值引用误用导致的问题 C11引入的移动语义和右值引用极大地提升了程序性能,允许资源的高效转移而非复制。这一特性也带来了新的陷阱,尤其是右值引用的误用可能导致难以察觉的bug。本文将探讨几个常见的右值引用误用场景&am…...

Ryujinx终极指南:免费开源Switch模拟器从零到精通的完整教程

Ryujinx终极指南:免费开源Switch模拟器从零到精通的完整教程 【免费下载链接】Ryujinx 用 C# 编写的实验性 Nintendo Switch 模拟器 项目地址: https://gitcode.com/GitHub_Trending/ry/Ryujinx 想在电脑上畅玩《塞尔达传说:王国之泪》《集合啦&a…...

3步解决Windows系统臃肿问题,让电脑性能提升60%

3步解决Windows系统臃肿问题,让电脑性能提升60% 【免费下载链接】Win11Debloat A simple, lightweight PowerShell script that allows you to remove pre-installed apps, disable telemetry, as well as perform various other changes to declutter and customiz…...

大模型后训练:小白也能掌握的进阶秘籍,收藏提升技能!

后训练是提升大模型性能的关键步骤,通过微调和对齐技术优化预训练模型。文章详细解析了后训练的理论与方法,涵盖微调(SFT)、强化学习(RL)及对齐技术,并以Llama 3为例展示实际操作流程。核心内容…...

【实战】Ubuntu 22.04LTS下Nvidia驱动安装与GCC版本冲突解决指南

1. 为什么你的Nvidia驱动安装总失败? 每次在Ubuntu上装Nvidia驱动就像在玩俄罗斯轮盘赌——有时候一次成功,有时候要反复折腾好几遍。特别是Ubuntu 22.04LTS这个长期支持版本,表面看着稳定,实际暗藏杀机。最常见的问题就是那个让人…...

Testsigma企业级自动化测试平台架构设计与高可用部署指南

Testsigma企业级自动化测试平台架构设计与高可用部署指南 【免费下载链接】testsigma Testsigma is an agentic test automation platform powered by AI-coworkers that work alongside QA teams to simplify testing, accelerate releases and improve quality across web, m…...

WebMVC 和 WebFlux 架构选型

在 Java Web 开发领域,并发模型的演进是一个不断追求更高吞吐与更简单编程模型的过程。从早期 Servlet 的“一请求一线程”,到 Servlet 3.1 的异步非阻塞,再到 WebFlux 的响应式编程,每一次变革都提升了并发能力,却也增…...