闲话不多说,直接上代码

    /// <summary>
/// 时间拓展
/// </summary>
public static class DateTimeExtension
{
/// <summary>
/// 获取时间戳
/// </summary>
/// <param name="dt">时间</param>
/// <param name="millisecond">是否毫秒级,true毫秒级(默认值)</param>
/// <returns></returns>
public static long ToTimestamp(this DateTime dt, bool millisecond = true)
{
/*
* ticks的单位是100纳秒,1 Tick=100纳秒,所以需要除以10000000(秒),10000(毫秒)
* s(秒),ms(毫秒),μs(微秒),ns(纳秒),1s=1000ms,1 ms=1000μs,1μs=1000ns
*/
int divisor = millisecond ? : ;
long dt_ticks = dt.ToUniversalTime().Ticks;
return (dt_ticks - Const.TiksUtc1970) / divisor;
} /// <summary>
/// 时间戳转换成时间,返回NULL则说明转换失败(如时间戳无效)
/// </summary>
/// <param name="timestamp">时间戳</param>
/// <param name="millisecond">是否毫秒级,true毫秒级(默认值)</param>
/// <param name="localTime">是否输出本地时间,true本地时间(默认值)</param>
/// <returns></returns>
public static DateTime? ToDateTime(this long timestamp, bool millisecond = true, bool localTime = true)
{
try
{
int ms = millisecond ? : ;
var dt = new DateTime(Const.TiksUtc1970 + timestamp * ms, DateTimeKind.Utc);
if (localTime)
dt.ToLocalTime();
return dt;
}
catch
{
return null;
}
} /// <summary>
/// 时间戳转换成时间
/// </summary>
/// <param name="timestamp">时间戳</param>
/// <param name="millisecond">是否毫秒级,true毫秒级(默认值)</param>
/// <param name="localTime">是否输出本地时间,true本地时间(默认值)</param>
/// <returns></returns>
public static DateTime? ToDateTime(this string timestamp, bool millisecond = true, bool localTime = true)
{
if (long.TryParse(timestamp, out long ts))
{
return ts.ToDateTime(millisecond, localTime);
}
return null;
}
}
    /// <summary>
/// 常量定义
/// </summary>
public class Const
{
/// <summary>
/// 日期时间格式化
/// </summary>
public const string DateTimeFormatString = "yyyy-MM-dd HH:mm:ss"; /// <summary>
/// 日期时间格式化
/// </summary>
public const string DateHmFormatString = "yyyy-MM-dd HH:mm"; /// <summary>
/// 日期格式化
/// </summary>
public const string DateFormatString = "yyyy-MM-dd"; /// <summary>
/// utc 1601-1-1 到 utc 1970-1-1 的 Ticks
/// </summary>
public const long TiksUtc1970 = ;
}

.Net C# 时间戳时间转换的更多相关文章

  1. php时间转换unix时间戳

    本文介绍了php编程中unix时间戳转换的小例子,有关php时间转换.php时间戳的实例代码,有需要的朋友参考下. 第一部分,php 时间转换unix 时间戳实现代码. 复制代码代码示例: <? ...

  2. Shell日期时间和时间戳的转换

    Gitlab的备份文件是以时间戳显示的,类似:1438624820_gitlab_backup.tar 为了更易于阅读,想把文件名转换成日期格式:2015-08-04_gitlab_backup.ta ...

  3. mysql 日期操作 增减天数、时间转换、时间戳(转)

    转自http://www.cnblogs.com/wenzichiqingwa/archive/2013/03/05/2944485.html http://hi.baidu.com/juntao_l ...

  4. mysql 日期操作 增减天数、时间转换、时间戳(转换)

    http://hi.baidu.com/juntao_li/item/094d78c6ce1aa060f6c95d0b MySQL datediff(date1,date2):两个日期相减 date1 ...

  5. C#中系统时间和UNIX时间戳互相转换

    在项目开发过程中,有时会遇到不同程序之间相互调用数据,数据中不免会包含时间,比如ASP.NET调用PHP,牵扯到时间就要做一下处理,PHP程序中一般存取的都是UNIX时间,不像ASP.NET存储的是年 ...

  6. python 时间和时间戳的转换

    对于时间数据,如2016-05-05 20:28:54,有时需要与时间戳进行相互的运算,此时就需要对两种形式进行转换,在Python中,转换时需要用到time模块,具体的操作有如下的几种: 将时间转换 ...

  7. python 时间、日期、时间戳的转换

    在实际开发中经常遇到时间格式的转换,例如: 前端传递的时间格式是字符串格式,我们需要将其转换为时间戳,或者前台传递的时间格式和我们数据库中的格式不对应,我们需要对其进行转换才能与数据库的时间进行匹配等 ...

  8. mysql小知识点汇总---(时间与时间戳的转换, 修改mysql用户名密码, navicate 导入sql文件报错 1153)

    1. 时间与时间戳的转换 1.1 时间戳转时间 FROM_UNIXTIME(add_time, '%Y-%m-%d') 1.2 时间转时间戳 UNIX_TIMESTAMP('2015-04-29') ...

  9. 时间戳显示为多少分钟前,多少天前的JS处理,JS时间格式化,时间戳的转换

    var dateDiff = function (timestamp) { // 补全为13位 var arrTimestamp = (timestamp + '').split(''); for ( ...

随机推荐

  1. Alibaba Nacos 学习(五):K8S Nacos搭建,使用nfs

    Alibaba Nacos 学习(一):Nacos介绍与安装 Alibaba Nacos 学习(二):Spring Cloud Nacos Config Alibaba Nacos 学习(三):Spr ...

  2. ASP使用ajax来传递中文参数的编码处理

    背景 asp的第一版是0.9测试版,自从1996年ASP1.0诞生,迄今20余载.虽然asp在Windows2000 IIS服务5.0所附带的ASP 3.0发布后好像再没有更新过了,但是由于其入手简单 ...

  3. 2019-10-16,sudo提权漏洞(CVE-2019-14287)实现

    sudo是linux系统命令,让普通账号以root身份执行某些命令,比如,安装软件,查看某些配置文件,关机,重启等,如果普通用户需要使用sudo需要修改配置文件,/etc/sudoers,将sudo使 ...

  4. day 23 复习

    本来应该学习day23,由于上午未学习,下去困,导致今天未进行进度 那就做一下简单的复习吧! 1. while else结构,如果while 后的条件条件不再满足 引发循环再继续,则执行else中的内 ...

  5. 利用keytool、openssl生成证书文件

    转载请标明出处:http://blog.csdn.net/shensky711/article/details/52225073 本文出自: [HansChen的博客] 用openssl指令逐步生成各 ...

  6. django-migrate一败再败

    python3 manage.py makemigrations # 生成数据库迁移文件 python3 manage.py migrate # 迁移数据库 简简单单两条命令就完成了django的数据 ...

  7. MySQL8——源码安装

    一.环境 ubuntu18.10(CentOS7由于gcc版本过低已经无法通过编译) 二.准备工作 1.安装依赖 apt-get install -y gcc g++ cmake build-esse ...

  8. 【数据结构】之栈(C语言描述)

    栈(Stack)是编程中最常用的数据结构之一. 栈的特点是“后进先出”,就像堆积木一样,堆的时候要一块一块堆到最上面,拆的时候需要从最上面一块一块往下拆.栈的原理也一样,只不过它的操作不叫堆和拆,而是 ...

  9. LNMP Shell脚本发布

    #!/bin/bash # : #This author is DKS #auto install nginx mysql php ################################## ...

  10. 浅谈C#中的序列化与反序列化

    今天我利用这篇文章给大家讲解一下C#中的序列化与反序列化.这两个概念我们再开发中经常用到,但是我们绝大部分只用到了其中的一部分,剩下的部分很多开发人员并不清楚,甚至可以说是不知道.因此我希望通过这篇文 ...