C# DateTime与时间戳转换实例
作者:zx 发布时间:2022-12-12 08:34:12
标签:C#,时间戳
C# DateTime与时间戳的相互转换,包括JavaScript时间戳和Unix的时间戳。
1. 什么是时间戳
首先要清楚JavaScript与Unix的时间戳的区别:
JavaScript时间戳:是指格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)起至现在的总毫秒数。
Unix时间戳:是指格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)起至现在的总秒数。
可以看出JavaScript时间戳总毫秒数,Unix时间戳是总秒数。
比如同样是的 2016/11/03 12:30:00 ,转换为JavaScript时间戳为 1478147400000;转换为Unix时间戳为 1478147400。
2. JavaScript时间戳相互转换
2.1 C# DateTime转换为JavaScript时间戳
System.DateTime startTime = TimeZone.CurrentTimeZone.ToLocalTime(new System.DateTime(1970, 1, 1)); // 当地时区
long timeStamp = (long)(DateTime.Now - startTime).TotalMilliseconds; // 相差毫秒数
System.Console.WriteLine(timeStamp);
2.2 JavaScript时间戳转换为C# DateTime
long jsTimeStamp = 1478169023479;
System.DateTime startTime = TimeZone.CurrentTimeZone.ToLocalTime(new System.DateTime(1970, 1, 1)); // 当地时区
DateTime dt = startTime.AddMilliseconds(jsTimeStamp);
System.Console.WriteLine(dt.ToString("yyyy/MM/dd HH:mm:ss:ffff"));
3. Unix时间戳相互转换
3.1 C# DateTime转换为Unix时间戳
System.DateTime startTime = TimeZone.CurrentTimeZone.ToLocalTime(new System.DateTime(1970, 1, 1)); // 当地时区
long timeStamp = (long)(DateTime.Now - startTime).TotalSeconds; // 相差秒数
System.Console.WriteLine(timeStamp);
3.2 Unix时间戳转换为C# DateTime
long unixTimeStamp = 1478162177;
System.DateTime startTime = TimeZone.CurrentTimeZone.ToLocalTime(new System.DateTime(1970, 1, 1)); // 当地时区
DateTime dt = startTime.AddSeconds(unixTimeStamp);
System.Console.WriteLine(dt.ToString("yyyy/MM/dd HH:mm:ss:ffff"));
来源:http://www.cnblogs.com/polk6/p/6024892.html


猜你喜欢
- 下面给大家介绍C#使用ICSharpCode.SharpZipLib.dll进行文件的压缩与解压功能,具体代码如下所示:using Syst
- 一、前言介绍本系统前端框架采用了比较流行的渐进式JavaScript框架Vue.js。使用Vue-Router和Vuex实现动态路由和全局状
- 编译常见问题在开发过程中,有碰到过一些由于编译优化导致的代码修改并不符合我们预期的情况。这也就是之前为什么我经常说编译产物其实是不太可以被信
- 最近正式入坑Flutter,首先从环境搭建开始,看了网上好多关于Windows环境搭建的资料,基本都是按官方文档写的,看完的感受是,还不如直
- 前言 Spring中最重要的概念IOC和AOP,实际围绕的就是Bean的生成与使用。什么叫做Bean呢?
- 把验证码存储在Cookie中一般来说,我们会把验证码的值用Session存储起来,通过对比用户提交的验证码和Session中的验证码,就可以
- 对象是对类的实例化。对象具有状态和行为,变量用来表明对象的状态,方法表明对象所具有的行为。Java 对象的生命周期包括创建、使用和清除。一、
- 配置文件中使用${}注入值方式在springboot中使用System.setProperty设置参数user: user-na
- 1.Nuget搜索Tesseract2.项目安装Tesseract3.引用命名空间using Tesseract;4.上Github下载别人
- MyBatis-plus模糊查询在使用MyBatis-plus的时候,一些基础的增删改查可以不用再自己写sql了:public interf
- 在网站开发中经常遇到级联数据的展示,比如选择城市的时候弹出的省市县选择界面。很多前端制作人员习惯于从JSON中而不是从数据库中获
- 在设置过webBrowser控件的ObjectForScripting属性后,还需要设置应用程序对com可见,不然会抛出一个异常(Objec
- 一、JMH vs JMeterJMeter可能是最常用的性能测试工具。它既支持图形界面,也支持命令行,属于黑盒测试的范畴,对非开发人员比较友
- Bean是Spring框架中最核心的两个概念之一(另一个是面向切面编程AOP)。1 定义Spring 官方文档对 bean 的解释是:In
- 此篇文章是我一个小白对委托的理解和总结,请高手多多评判指教。委托就是一种后期绑定机制,说的直白点就是在调用的时候才去传递业务逻辑的一种算法。
- java使用stream实现list中对象属性的合并:根据两个List中的某个相同字段合并成一条List,包含两个List中的字段一、前言为
- 这篇讲的是如何生成一个自定义的ImageView,实现自动放大缩小动画。 为什么实现这个功能呢?因为我想在ViewPager实现图片放大缩小
- 构造http headerprivate static final String URL = "url";private
- 使用Post添加数据到数据库出现方块乱码解决方法,在web.xml里最前面添加过滤器,代码如下,放在最前面,因为有优先级,要首先拦截<
- 前言我们通常使用Spring boot做项目搭建的基础框架,必然少不了它的内置日志框架Logback,在spring-boot-starte