java+c#+json+时间_C# Json 字符串时间 转对象

内容纲要

使用Json存储时间需要转为对象时,

要使用如下面的格式

2019-12-06T17:15:52Z

Z 表示时区

使用示例:

表示北京时间

2019-12-06T17:15:52+08:00

但是前端、C#时间转换和数据库的时间处理,协调起来会比较麻烦,JSON和字符串转时间也会麻烦。

根据笔者的校验,建议使用 UNIX 时间戳 形式传递。

C# 快速将当前时间转换为时间戳的代码为(以秒为单位)

(DateTime.Now.ToUniversalTime().Ticks - 621355968000000000) / 10000 / 1000

如果你想以毫秒为单位

(DateTime.Now.ToUniversalTime().Ticks - 621355968000000000) / 10000

C# 时间转换的常用代码

///

/// 获取1970-01-01至dateTime的秒数,不带时区

///

public static long GetTimestamp(DateTime dateTime)

{

DateTime dt1970 = new DateTime(1970, 1, 1, 0, 0, 0, 0);

return (dateTime.Ticks - dt1970.Ticks) / 10000 / 1000;

}

///

/// 根据时间戳timestamp(单位 秒)计算日期,不带时区

///

public static DateTime NewDate(long timestamp)

{

DateTime dt1970 = new DateTime(1970, 1, 1, 0, 0, 0, 0);

long t = dt1970.Ticks + timestamp * 10000 * 1000;

return new DateTime(t);

}

///

/// 将字符串转为时间

///

///

///

public static DateTime StringToDateTime(string dateString)

{

//格式必须为 2019-03-13 14:49:10.8327809

DateTime dt = Convert.ToDateTime(dateString, System.Globalization.CultureInfo.CurrentCulture);

return dt;

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值