1、找一个比较全的时间工具类太难了,没人总结啊(适用于linux)。

#include <ctime>
#include <stdint.h>
#include <iostream>
#include <string>
#include <sys/time.h>using std::string;/*** Linux高精度struct timespec(精确到纳秒)和struct timeval(精确到微秒)* */class TimesUtil
{
public:/*** 获取当前系统时间(精确到纳秒)tv_nsec精确到纳秒(编译时加上-lrt)* */static inline int64_t getTimeNs(){struct timespec ts;clock_gettime(CLOCK_REALTIME, &ts);return ts.tv_sec*1000000000 + ts.tv_nsec;}/*** 获取当前系统时间(精度微秒)tv_usec精确到微秒* */static inline int64_t getTimeUs(){struct timeval tv;gettimeofday(&tv, NULL);return tv.tv_sec*1000000 + tv.tv_usec;}/*** 获取当前系统时间(精度毫秒)tv_usec精确到微秒* */static inline int64_t getTimeMs(){struct timeval tv;gettimeofday(&tv, NULL);return tv.tv_sec*1000 + tv.tv_usec/1000;}/*** 获取当前系统时间(精度秒),YY年 mm月 dd日 HH时 MM分 SS秒* */static inline string getDateTime(){time_t now = time(0);tm  *ltm = localtime(&now);char myDate[40],myTime[40], ims[10];strftime(myDate, 40, "%Y-%m-%d", ltm);strftime(myTime, 40, " %H:%M:%S", ltm);return string(myDate) + string(myTime);}/*** 根据纳秒时间返回 交易所时间格式:HHMMSSsss,其中LocalTime精确到纳秒**/static int getLocalTime_t(int64_t LocalTime){time_t  local_time = LocalTime /1000000000;struct tm*  tm;tm = localtime(&local_time);int time_=0;if(LocalTime /1000000000 > 0){time_ = (tm->tm_hour*10000+tm->tm_min*100+tm->tm_sec)*1000+LocalTime%1000000000/1000000;}else{time_ = LocalTime%1000000000/1000000;}return time_;  //精度毫秒 }
};

C++时间工具类——纳秒,微秒,毫秒,秒,日期相关推荐

  1. 皮秒 纳秒 微秒 毫秒 秒 ps、ns、us、ms、s 时间单位之间的换算

    皮秒 纳秒 微秒 毫秒 秒 ps.ns.us.ms.s 时间单位之间的换算 1,000,000,000,000皮秒=1秒 (12个0)ps -> s 1,000,000,000纳秒=1秒     ...

  2. Java时间工具类(把日期时间转换成xx秒前、xx分钟前、xx小时前...)

    Java时间工具类(把日期时间转换成xx秒前.xx分钟前.xx小时前...) package com.liuzy.javaopen.entity; import java.text.ParseExce ...

  3. 重学Java8新特性(四) : 日期时间API、LocalDateTime、DateTimeFormatter、开发中时间工具类(常用)

    文章目录 一.JDK8中日期时间API的介绍 1.1.LocalDate.LocalTime.LocalDateTime的使用 2.2.Instant类的使用 2.3.DateTimeFormatte ...

  4. 弄清std::chrono::system_clock::time_point,自定义时间工具类

    time_t 是32位的整数,用来存放格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)起至现在的总秒数,不能表示毫秒,约能表示135年 time ...

  5. Java中 LocalDate、LocalTime、LocalDateTime三个时间工具类的使用介绍

    Java中 LocalDate.LocalTime.LocalDateTime三个时间工具类的使用介绍 一.背景: 之前在做项目的过程中,对日期时间类没有一个系统的了解,总是在用的时候去搜索一下,解决 ...

  6. 分享一个Joda-Time日期时间工具类

    写在前面 在JDK1.8之前,处理日期和时间的方式比较单一,Java中提供了Calendar来处理日期,但是过程较为繁琐. 但是在JDK1.8之后,Java更新了time包提供了LocalDate,L ...

  7. Java8 ,LocalDate,LocalDateTime处理日期和时间工具类,

    Java8 ,LocalDate,LocalDateTime处理日期和时间工具类 日期格式化 1.获取今天的日期 2.在Java 8 中获取年.月.日信息 3.在Java 8 中处理特定日期 4.在J ...

  8. 1hutool实战:DateUtil(时间工具类)-当前时间

    技术活,该赏 关注+一键三连(点赞,评论,收藏)再看,养成好习惯 hutool实战(带你掌握里面的各种工具)目录 万字博文教你搞懂java源码的日期和时间相关用法 用途:获取当前时间 使用场景 当前时 ...

  9. Java时间工具类(获取上个月、获取月份1月1号时间戳、获取月份最后一天时间戳...)

    在开发中我们经常还会用到日期时间,以下是一个日期时间工具类,包含: 获取每月月初时间戳 获取每月15号时间戳 获取每月月末时间戳 获取当前被格式化后的日期 从这些方法中你可以改写出你需要的方法 PS: ...

最新文章

  1. Python xlrd 读取excel表格 常用用法整理
  2. 线性代数投影法在线性回归中的应用
  3. 【插件】jQuery.iviewer----图片浏览(滚动放大缩小问题解决)
  4. html标签书写注意事项,HTML一些标签注意事项
  5. Linux关机、重启命令
  6. stackexchange_通过Spring Social推特StackExchange –第1部分
  7. ps怎么对比原图快捷键_PS教程:P图前后,你还能认出这是同一个人吗?
  8. 计算机二级考试Access教程
  9. 什么是贝叶斯定理?朴素贝叶斯有多“朴素”?终于有人讲明白了
  10. TypeError: unhashable type: ‘numpy.ndarray‘
  11. 辞职信格式模板和范文参考
  12. C++20 标准正式发布,命名为 ISO/IEC 14882:2020。
  13. Ad hoc queries(即席查询)
  14. mic in、line inline out、speaker out、headphone out 区别
  15. 网络操作系统项目教程----Windows server 2003篇----打印机安装与配置
  16. 用JAVA编程的数字时钟代码
  17. php alt什么意思,img标签的alt属性是什么意思?
  18. 关于使用联盟链建立本地p2p可插电式混合动力车的智能电网交易的想法
  19. 使用rename命令批量修改后缀名
  20. Java web课程设计-购物系统

热门文章

  1. 实现群辉NAS免端口访问教程
  2. 【SQLite】C++链接SQLite数据库
  3. 风林评《解读基金,我的投资观与实践》|你怎么能不知道基金投资的三个思想...
  4. 让源代码成为开发者最宝贵的财富
  5. JVM垃圾回收——ZGC垃圾收集器
  6. MFC 获取硬盘序列号、IP地址、MAC地址
  7. stinger 小型机器人_格斗机器人史上攻击力大排行,排名第一的果然是TA!
  8. mac 类似matlab,10款Mac上科研人员必备的科研工具推荐和下载 | 玩转苹果
  9. SQL Server辅助插件——SQL Prompt
  10. SEO之网站快速被收录