unix timestamp 与 可视化时间/常规时间进行转换。

最近工作中需要根据可视化时间得到unix timestamp,完成工作之后记录下来了,防止下次遇到此问题时,又需要重新梳理,直接上代码了

#include <iostream>
#include <string>
#include <ctime>
#include <string.h>void unix_timestamp_2_str(long timestamp, char strTime[], int bufLen) {struct tm tm = *localtime((time_t *)&timestamp);strftime(strTime, bufLen - 1, "%Y-%m-%d %H:%M:%S", &tm);strTime[bufLen - 1] = '\0';
}time_t strtime_2_unix_timestamp(const char *timestamp) {struct tm tm;memset(&tm, 0, sizeof(tm));sscanf(timestamp, "%d-%d-%d %d:%d:%d", &tm.tm_year, &tm.tm_mon, &tm.tm_mday,&tm.tm_hour, &tm.tm_min, &tm.tm_sec);tm.tm_year -= 1900;tm.tm_mon--;return mktime(&tm);
}int main () {char strTime[100] = {0};long now_timestamp = 1619716862;unix_timestamp_2_str(now_timestamp, strTime, sizeof(strTime));std::cout << "timestamp=" << now_timestamp << " ---> strTime=" << strTime << std::endl;std::string strtime("2021-04-29 17:21:02");time_t timestamp = strtime_2_unix_timestamp(strtime.c_str());std::cout << "timestamp = " << timestamp << "----> strtime=" << ctime(&timestamp) << std::endl;return 0;
}

结果如下:

timestamp=1619716862 ---> strTime=2021-04-29 17:21:02strtime=Thu Apr 29 17:21:02 2021---> timestamp = 1619716862

注意点:

(1)、timestamp的类型是long,与time_t一致。

(2)、unix timestamp是一个long类型的值,从1970年1月1日00:00::00到本时刻经历的second数。

linux下unix timestamp 与 可视化时间/常规时间进行转换相关推荐

  1. linux根据修改日期删除,在Linux下怎么一次性删除掉那些修改时间为指定日期的所有文件?...

    问:在Linux下怎么一次性删除掉那些修改时间为指定日期的所有文件? 答:脚本del_files_of_date.sh 用法:./del_files_of_date.sh 比如:./del_files ...

  2. Linux下time/timestamp相关。

    在Linux下面编程,经常要碰到用到与time/timestamp相关的东西,下面是我以前收集的,放在这里共享. In the file: dbus-sysdeps-unix.c /** * Get ...

  3. linux当前时间 按格式化,Linux下date命令,格式化输出,时间设置

    date命令的帮助信息 [root@localhost source]# date --help 用法:date [选项]... [+格式] 或:date [-u|--utc|--universal] ...

  4. linux时间有几个,Linux下与文件相关的几个时间的介绍

    与文件相关的几个时间: 1.访问时间,读一次这个文件的内容,这个时间就会更新.比如对这个文件使用more命令.ls.stat命令都不会修改文件的访问时间. 2.修改时间,对文件内容修改一次,这个时间就 ...

  5. linux下的各种shell介绍(bash和dash转换)

    在linux下编写shell脚本文件时,经常会看到很多人在文件的第一行中标注"#!/bin/bash".这句话的意思是告诉系统强制用bash,避免出现一些不兼容的问题. 那么,在l ...

  6. linux检测文件名编码,Linux下查看文件编码,文件或文件名编码格式转换 | 缥缈的云...

    如果你需要在Linux中操作windows下的文件,那么你可能会经常遇到文件编码转换的问题.Windows中默认的文件格式是GBK(gb2312),而Linux一般都是UTF-8.下面介绍一下,在Li ...

  7. linux下录音识别成文字软件,如何将录音转换成文字?录音转文字简单方法介绍...

    如何将录音转换成文字?录音转文字简单的方法是什么?很多小伙伴对录音转文字,文字阿欢语音方便的需求还是蛮大的,因为它对我们的帮助还是蛮大的,可以快速把录制好的录音转换成文字,并且还有实时翻译功能,下面给 ...

  8. Linux下C语言的系统头文件

    Linux菜鸟初看Linux下编程的糗事. 前段时间琢磨着接触一下Linux下的C语言编程,就找了本书看.看到很多文件操作的程序要包含"sys/stat.h". 写程序前,我想先找 ...

  9. linux下编译wpa_supplicantnbsp;…

    linux下编译wpa_supplicant 收藏 前一段时间只在vs2005下编译成功过.经过近一段时间的琢磨,今天终于在linux下成功编译了wpa_supplicant. 挺简单的事情折腾了这么 ...

最新文章

  1. int long java_java long int的区别
  2. 苹果12 Pro Max和mini测评来了,看完我选择了iPhone 12
  3. 在leangoo里怎么添加和移动列表,怎么修改列表名称?
  4. c语言猜拳游戏中出现的关键词,C语言猜拳游戏代码及分析
  5. 【转】MongoDB 3.0 正式版本即将发布,强力推荐
  6. mysql表分区列_如何基于char列对MySQL表进行分区?
  7. 在Windows笔记本上调试运行在iOS设备上的前端应用
  8. 每个客户使用Jersey处理的Cookie
  9. java thread 多线程_java用Thread方式创建多线程
  10. 从一个PHP数据生成 CSV 文件
  11. git学习笔记-(11-git存储)
  12. c++做病毒|教程代码
  13. 电气工程学计算机有用吗,我是学计算机的,因为一直喜欢电气,所以想考个注..._电气工程师_帮考网...
  14. 长焦拍照对比:小米10至尊纪念版和一加8 Pro、vivo X50 Pro+~~~~
  15. 层次聚类python实现
  16. 明尼苏达大学计算机工程,关于美国明尼苏达大学电气与计算机工程系洪明毅博后学术报告的通知...
  17. 大数据、互联网、机器人成大热门
  18. windows10关闭防火墙
  19. Unity自定义UI组件(十一) 雷达图、属性图
  20. 安防网络摄像头互联网直播录像设置永久储存却只能播放一半问题解决

热门文章

  1. Page.FindControl方法找不到指定控件的原因
  2. iOS 点转成字符串,再字符串转换成点
  3. AppDelegate.h
  4. 使用MinGW编译Psycopg2
  5. 艾伟也谈项目管理,我是如何带领团队开发项目的
  6. 一天学一个模式_第一天:策略模式
  7. linux命令编译C语言程序
  8. Android应用开发—TabLayout定制化Tab样式
  9. mysql 数据库查询测试_MySQL查询测试经验
  10. Doc2Bow简介与实践Demo