C# 时间戳转换实例
作者:SCHOLAR_LIAO 发布时间:2022-12-07 12:17:57
标签:C#,时间戳
本篇文章主要介绍了C# DateTime与时间戳(11位与13)转换实例,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧C#
/// <summary>
/// 将时间转时间戳换
/// 有效范围1970-01-01 08:00:00~~2100-01-01 08:00:00 (范围可改)
/// </summary>
/// <param name="time">要转换的时间</param>
/// <param name="length">输出转换长度</param>
/// <param name="timestamp">输出时间戳</param>
/// <returns></returns>
public bool ToTimeStamp(DateTime time,int length, out long timestamp)
{
timestamp = 0;
if (length == 11)
{
timestamp = Convert.ToInt64((time - (TimeZone.CurrentTimeZone.ToLocalTime(new DateTime(1970, 1, 1)))).TotalSeconds);
return (timestamp > 0 && timestamp <= 4102444800);//范围设定
}
else if (length == 13)
{
timestamp = Convert.ToInt64((time - (TimeZone.CurrentTimeZone.ToLocalTime(new DateTime(1970, 1, 1)))).TotalMilliseconds);
return (timestamp > 0 && timestamp <= 4102444800000);//范围设定
}
else
return false;
}
/// <summary>
/// 将时间戳换为时间转
/// 有效范围1970-01-01 08:00:00~~2100-01-01 08:00:00 (范围可改)
/// </summary>
/// <param name="timestamp">要转换的时间戳</param>
/// <param name="length">要转换长度</param>
/// <param name="time">输出时间</param>
/// <returns></returns>
public bool ToDateTime(long timestamp, int length, out DateTime time)
{
time = DateTime.Now;
DateTime startTime = TimeZone.CurrentTimeZone.ToLocalTime(new DateTime(1970, 1, 1));//当地时区
if (length == 11)
{
time = startTime.AddSeconds(timestamp);
return (timestamp > 0 && timestamp <= 4102444800);//范围设定
}
else if (length == 13)
{
time = startTime.AddMilliseconds(timestamp);
return (timestamp > 0 && timestamp <= 4102444800000);//范围设定
}
else return false;
}
DateTime dt=DateTime.Now;
new MyThread().ToTimeStamp(dt, 11, out long timestamp1);
new MyThread().ToTimeStamp(dt, 13, out long timestamp2);
new MyThread().ToDateTime(timestamp1, 11, out DateTime time1);
new MyThread().ToDateTime(timestamp2, 13, out DateTime time2);
Console.WriteLine("转换的时间"+dt);
Console.WriteLine($"11位的时间戳:{timestamp1}");
Console.WriteLine($"13位的时间戳:{timestamp2}");
Console.WriteLine($"11位的时间戳转时间:{time1}");
Console.WriteLine($"13位的时间戳转时间:{time2}");
调用结果
来源:https://blog.csdn.net/SCHOLAR_LIAO/article/details/128608902


猜你喜欢
- 在网上学习了一种继承系统AlertDialog然后用一统一方法控制dialog显示的方法,效果还不错,但按钮栏那里的分隔线并不是想要的。于是
- 一般而言,Android 应用在请求数据时都是以 Get 或 Post 等方式向远程服务器发起请求,那你有没有想过其实我们也可以在 Andr
- Java 利用poi把数据库中数据导入Excel效果:使用时先把poi包导入工程的path,注意只需要导入poi包即可,下载后有三个jar包
- JAVA中实现pdf转图片可以通过第三方提供的架包,这里介绍几种常用的,可以根据自身需求选择使用。一、icepdf。有收费版和开源版,几种方
- 前言如果你想玩转C# 里面多线程,工厂模式,生产者/消费者,队列等高级操作,就可以和我一起探索这个强大的线程安全提供阻塞和限制功能的C#神器
- 前言在springboot项目中只需一句代码即可实现多个数据源之间的切换:// 切换sqlserver数据源:DataSourceConte
- Java多态成员访问的特点多态概要多态是面向对象编程的三个特性之一,这里不展开做过多介绍,有机会专门写一个关于继承,封装,多态三大特性的文章
- 为什么需要ThreadLocalRandomjava.util.Random一直都是使用比较广泛的随机数生成工具类,而且java.lang.
- 一、Nuget安装log4net --> Install-Package log4net二、在AssemblyInfo.cs文件中添加
- 1.依赖的jar文件 jsch-0.1.53.jar2.登录方式有密码登录,和密匙登录 代码:主函数:import java.ut
- 快速入门在Spring Boot的工程中的pom.xml中引入spring-boot-starter-mail依赖:<dependen
- 简介项目需要...直接展示效果吧:原理使用UGUI提供的ScrollRect和ScrollBar组件实现基本滑动以及自己控制每次移动一页来达
- 一、效果展示初级难度中级难度高级难度测试界面二、项目介绍项目背景扫雷是一款大众类的益智小游戏。根据点击格子出现的数字找出所有非雷格子,同时避
- 本文实例为大家分享了Android自定义控件EditText的具体代码,供大家参考,具体内容如下自定义控件分三种: 1. 自绘控件 2. 组
- C语言数据结构实现银行模拟实现代码:#include <stdio.h> #include <stdlib.h> #
- import java.io.ByteArrayOutputStream;import java.io.InputStream;//从输入流
- 本文实例为大家分享了C#无损高质量压缩图片的具体代码,供大家参考,具体内容如下/// 无损压缩图片 /// <param
- ListJava 的list又分为 ArrayList 和 LinkedListArrayListprivate class Itr imp
- 本文实例讲述了C#实现json格式转换成对象并更换key的方法。分享给大家供大家参考。具体分析如下:由于是不标准的序列化对象类型,因此你无法
- 经典的排序算法有八种,分别为:冒泡排序选择排序插入排序归并排序希尔排序快速排序堆排序基数排序其中冒泡排序、选择排序、插入排序称为三大基本排序