Introduction:

在项目开发中,我们都经常会用到时间戳来进行时间的存储和传递,最常用的Unix时间戳(TimeStamp)是指格林尼治时间1970年1月1日0时(北京时间1970年1月1日8时)起至现在的总秒数(10位)或总毫秒数(13位);

Body:

而在C#中.Net框架没有提供现成的获取时间戳的方式,这里分享一个自己实现的时间戳转换工具:

///

/// 时间工具类

///

public static class DateTimeUtil

{

///

/// 时间戳计时开始时间

///

private static DateTime timeStampStartTime = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc);

///

/// DateTime转换为10位时间戳(单位:秒)

///

/// DateTime

/// 10位时间戳(单位:秒)

public static long DateTimeToTimeStamp(DateTime dateTime)

{

return (long)(dateTime.ToUniversalTime() - timeStampStartTime).TotalSeconds;

}

///

/// DateTime转换为13位时间戳(单位:毫秒)

///

/// DateTime

/// 13位时间戳(单位:毫秒)

public static long DateTimeToLongTimeStamp(DateTime dateTime)

{

return (long)(dateTime.ToUniversalTime() - timeStampStartTime).TotalMilliseconds;

}

///

/// 10位时间戳(单位:秒)转换为DateTime

///

/// 10位时间戳(单位:秒)

/// DateTime

public static DateTime TimeStampToDateTime(long timeStamp)

{

return timeStampStartTime.AddSeconds(timeStamp).ToLocalTime();

}

///

/// 13位时间戳(单位:毫秒)转换为DateTime

///

/// 13位时间戳(单位:毫秒)

/// DateTime

public static DateTime LongTimeStampToDateTime(long longTimeStamp)

{

return timeStampStartTime.AddMilliseconds(longTimeStamp).ToLocalTime();

}

}

One more thing:

在C#中,DateTime和字符串类型类似,都是一个设计良好的不可变类型,但与字符串类型不同的是,DateTime是值类型,不会造成单独的堆内存消耗和垃圾回收开销,因此大大部分情况下都可以放心使用;

Conclusion:

DateTime在使用时还有很多小技巧,博主后面会在新博文中分享出来和大家一起探讨。有关闰秒的话题可以自行Search,这里不做讨论。

总结

以上所述是小编给大家介绍的C#实现时间戳的简单方法,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

c# php 时间戳,C#实现时间戳的简单方法相关推荐

  1. 网游服务端php5.1时间戳格式化,php格式化时间戳显示友好时间的简单示例

    这篇文章主要为大家详细介绍了php格式化时间戳显示友好时间的简单示例,具有一定的参考价值,可以用来参考一下. 感兴趣的小伙伴,下面一起跟随512笔记的小玲来看看吧! 在项目中时间一律显示为2014-1 ...

  2. java unix 时间戳_「unix时间戳」Unix时间戳和Java中的时间戳的区别 - seo实验室

    unix时间戳 前言 最近在使用阿里的日志服务时,遇到了一些Timestamp的坑,所以特意做了了解并整理了一下.在这之前首先得介绍一下Unix时间戳:unix时间戳是从1970年1月1日(UTC/G ...

  3. html 时间戳转换年月日,时间戳与日期的转换方法

    php怎么将指定日期转换为时间戳 date('Y-m-d H:i:s', 1156219870); UNIX时间戳转换为日期用函数: date() 一般形式:date('Y-m-d H:i:s', 1 ...

  4. linux时间戳反转,Unix时间戳到LDAP时间戳

    有很多关于如何LDAP->的Unix转换的例子,但我不能对上帝的爱将其转换回在Unix的> LDAP ..Unix时间戳到LDAP时间戳 这里就是我得赶紧为LDAP-> Unix的: ...

  5. mysql 时间戳 转int_MySQL时间戳相互转换

    mysql将时间戳转成常用时间格式 在mysql中,一个时间字段的存储类型是int(11),怎么转化成字符类型,比方存储为13270655222,需要转化为yyyy -mm-dd的形式. 使用 FRO ...

  6. php日期时间戳相互转换,PHP时间戳和日期相互转换

    在php中我们要把时间戳转换日期可以直接使用date函数来实现,如果要把日期转换成时间戳可以使用strtotime()函数实现,下面我来给大家举例说明. 1.php中时间转换函数 strtotime ...

  7. php 获取今日、昨日、上周、本月的起始时间戳和结束时间戳的方法

    php 获取今日.昨日.上周.本月的起始时间戳和结束时间戳的方法,主要使用到了 php 的时间函数 mktime.下面首先还是直奔主题以示例说明如何使用 mktime 获取今日.昨日.上周.本月的起始 ...

  8. java 时间戳和PHP时间戳 的转换 php time()

    总结一下java 时间戳和PHP时间戳 的转换问题: 由于精度不同,导致长度不一致,直接转换错误. JAVA时间戳长度是13位,如:1294890876859 PHP时间戳长度是10位, 如:1294 ...

  9. 转:PHP 获取今日、昨日、上周、本月的起始时间戳和结束时间戳的方法

    php 获取今日.昨日.上周.本月的起始时间戳和结束时间戳的方法,主要使用到了 php 的时间函数 mktime.下面首先还是直奔主题以示例说明如何使用 mktime 获取今日.昨日.上周.本月的起始 ...

最新文章

  1. Error:CPACK_PACKAGE_VERSION does not match version provided by version.hpp header!
  2. 机器学习实战笔记(Python实现)-01-机器学习实战
  3. spark中使用categoricalFeaturesInfo来标记分类型变量
  4. 结合zxing 和zbar 扫一扫
  5. 链式栈的实现(头文件及源程序)
  6. 【Trie】最长异或路径(ybtoj Trie-3/luogu 4551)
  7. 从地址栏中敲入一个网址,到网页显示出来,这个过程经历了什么
  8. qt5.3.1+opencv2.4.9编译环境的搭建
  9. 10.Partial Dependence Plots
  10. nefu 519 昨日重现
  11. 基于虚拟账号的邮件系统之×××
  12. python3 之 天天生鲜 项目 缓存cache
  13. Python+turtle交互式绘图:可以用鼠标拖动的小海龟
  14. leetcode力扣12. 整数转罗马数字
  15. Spring 3.0 发布候选版 3 已经可用!
  16. activemq之Windows安装
  17. 通过Web页面获取基站位置(Web端,源码下载)
  18. oracle函数 NLS_INITCAP(x[,y])
  19. springboot单元测试_springboot2.x基础教程:单元测试
  20. java 整型list_Java:集合,对列表(List)中的数据(整型、字符串、日期等)进行排序(正序、倒序)的方法;字符串按照整型排序的方法...

热门文章

  1. 【小安翻唱】感冒版 心音---Xenos
  2. 当中国AI开始远洋,我们能从百度海外输入法的巴展大秀上学到什么?
  3. [多图]译稿:重装Windows,只用53款全免费软件
  4. 这一路~~jncip
  5. 那些年、那些人、那些事(iprouter迟到三年的JNCIP回忆录)
  6. 了解报表开发证书——FCRP
  7. 解决:flash cs5运行时出现“java运行时环境初始化时出现错误,你可能需要重装Flash”
  8. 将所有文件转化为UTF8编码
  9. 图片转base64跨域问题
  10. OceanBase-安装