DateTime与long互转

DateTime转long:

public static long GetDateLong(object time)
        {
            DateTime epoc = TimeZone.CurrentTimeZone.ToLocalTime(new DateTime(1970, 1, 1));
            TimeSpan delta = new TimeSpan();

            if (time is DateTime)
                delta = ((DateTime)time).Subtract(epoc);

            else if (time is string)
                delta = DateTime.Parse(time.ToString()).Subtract(epoc);

            else
                throw new ArgumentOutOfRangeException("时间格式错误.1");

            if (delta.TotalMilliseconds < 0)
                throw new ArgumentOutOfRangeException("时间格式错误.2");

            long ticks = (long)delta.TotalMilliseconds;
            return ticks;
        }

long转DateTime:

public static DateTime GetDateFromLong(long ticks)
        {
            var date = TimeZone.CurrentTimeZone.ToLocalTime(new DateTime(1970, 1, 1));
            date = date.AddMilliseconds(ticks);
            return date;
        }

网上常见错误:

DateTime epoc = new DateTime(1970, 1, 1);
时间: 2024-10-10 02:51:16

DateTime与long互转的相关文章

PowerShell中iso8601格式日期和DateTime对象互转实例

参考链接:https://technet.microsoft.com/zh-cn/library/aa997624(v=exchg.150).aspxhttps://www.pstips.net/convert-iso8601-date-string-to-date-object.htmlhttps://www.pstips.net/convert-datetime-to-iso8601-format.htmlhttps://segmentfault.com/a/1190000004292140

utc时间和local 时间互转

python 1.utc 时间和 local 时间互转 #utc 转本地时间 def utcFlocaltime(utc_time): utc_time =  utc_time + datetime.timedelta(hours=8) return utc_time.strftime("%Y-%m-%d %H:%M:%S") #本地 时间转utc def localtrfutc(local_time): utc_time = local_time - datetime.timedel

Java与C#间json日期格式互转完美解决方案

http://blog.csdn.net/wilsonke/article/details/24362851 作用一种简单方便的数据传输方案,JSON已经成为替代XML的事实标准.然而在JSON中,时间(DateTime,Timestamp,Date等)格式一直没有很好地统一,当需要跨平台序列化/反序列化时,遇到不少麻烦.作者经过反复尝试,解决了C#与Java通过JSON进行时间传输的困难.C#解析Java/Javascript生成的JSON并不困难,但Java解析C#生成的JSON困难重重.下

Base64与Image依据具体业务需求互转

C#Base64篇: Base64与Image互转篇: TODO: Base64与Image互转篇:主要讲解依据业务需求开发图片展示与图片保存 TODO: 1,新增页面,保存路径名 2,查看页面,数据来源于其它表,读取base64数据格式图片转换为图片显示 讲解篇:1,新增页面,保存路径名2,查看页面,数据来源于其它表,读取base64数据格式图片转换为图片显示 1,新增页面,保存路径名 <%@ Page Language="C#" AutoEventWireup="t

通过网络路径获取的图片 btye 图片流互转

楼主有一个需要用户用的网站要上传图片,图片不保存到网站,而是要专门存放到一个图片服务器上面,于是需要通过byte的形式来传输 之前写的一个本地图片流转于byte互转 后来发现通过网络路径获取的图片这个方法就用不了 后来百度了 换了一个新的写法 图片流转成byte数组 1 public byte[] SaveImage(Image image) 2 { 3 MemoryStream ms = new MemoryStream(); 4 BinaryFormatter bf = new Binary

String、Date和Timestamp的互转

begin 2018年8月17日19:09:49 String.Date和Timestamp的互转 String和Date的互转 关于String和Date的互转,在java8后会有不同.因为java8添加java.time包及子包,其中主要API是关于日期.时间.时刻和时间段及它们之间的转换和打印输出,比较重要一点的是java.time中LocalDate.LocalTime.LocalDateTime都是线程安全的.有兴趣可以查看官网的描述:Package java.time和Package

python datetime模块用法

python datetime模块用法 1. 创建naive(无时区信息)的datetime对象 import datetime dt_utc = datetime.datetime.utcnow() dt_utc # datetime.datetime(2019, 2, 1, 10, 53, 34, 145034) dt_utc.tzinfo # None dt_local = datetime.datetime.now() dt_local.tzinfo # None # tzinfo为No

datetime、timestamp、date、datetime、Calendar(Java)

datetime: 1.允许为空值.可以自定义值,系统不会自动修改其值. 2.不可以设定默认值,所以在不允许为空值的情况下,所以手动指定datetime字段的值才能成功插入数据. 3.虽然不可以设定默认值,但是可以指定datetime字段的值的时候使用now()变量来自动插入系统的当前时间.  显示格式 YYYY-MM-DD HH:mm:ss 显示范围 1601-01-01 到 9999-01-01 (sql) end:datetime类型适合用来记录数据的原始的创建时间,因为无论你怎么更改记录

在js里UTF-8与GB2312的互转

js的函数如下: function GB2312UTF8() { this.Dig2Dec = function(s) { var retV = 0; if (s.length == 4) { for (var i = 0; i < 4; i++) { retV += eval(s.charAt(i)) * Math.pow(2, 3 - i); } return retV; } return - 1; } this.Hex2Utf8 = function(s) { var retS = "