Qt 获取当前时间

2023-05-16

1、获取带日期的时间,使用QDateTime类
QDateTime current_date_time =QDateTime::currentDateTime();
QString current_date =current_date_time.toString("yyyy.MM.dd hh:mm:ss.zzz ddd");
current_date字符串结果为"2016.05.20 12:17:01.445 周五",其中时间的显示格式可灵活配置,此处简单说明本实例中用到的部分:
yyyy表示年;MM表示月;dd表示日; hh表示小时;mm表示分;ss表示秒;zzz表示毫秒;ddd表示周几
详细配置格式内容较多,有需要的请自行查看Qt Assistant中关于函数QString QDateTime::toString ( const QString & format ) const的说明
2、只需要时间,不需要日期,也可使用QTime类
QTime current_time =QTime::currentTime();
int hour = current_time.hour();//当前的小时
int minute = current_time.minute();//当前的分
int second = current_time.second();//当前的秒
int msec = current_time.msec();//当前的毫秒
当然QTime也可以像QDateTime::toString那样直接输出固定格式的字符串,使用方法与QDateTime::toString类似,也可参考Qt Assistant中关于函数QString QTime::toString ( const QString & format ) const的说明
3、使用标准的C语言函数localtime(精确到秒)
注意:需要包含time.h头文件
(1)使用strftime()进行格式转换
time_t t = time( 0 );
char tmp[64];
strftime( tmp, sizeof(tmp), "%Y/%m/%d %X %A 本年第%j天 %z",localtime(&t) );
printf("%s\n",tmp);
输出为“2016/05/20 13:11:57 Friday 本年第141天 中国标准时间”
其中函数size_t strftime(char *strDest,size_t maxsize,const char *format,const  struct tm *timeptr)功能为根据format指向字符串中格式命令把timeptr中保存的时间信息放在strDest指向的字符串中,最多向strDest中存放maxsize个字符。该函数返回向strDest指向的字符串中放置的字符数。
format说明:
%a 星期几的简写
%A 星期几的全称
%b 月份的简写
%B 月份的全称
%c 标准的日期的时间串
%C 年份的前两位数字
%d 十进制表示的每月的第几天
%D 月/天/年
%e 在两字符域中,十进制表示的每月的第几天
%F 年-月-日
%g 年份的后两位数字,使用基于周的年
%G 年份,使用基于周的年
%h 简写的月份名
%H 24小时制的小时
%I 12小时制的小时
%j 十进制表示的每年的第几天
%m 十进制表示的月份
%M 十时制表示的分钟数
%n 新行符
%p 本地的AM或PM的等价显示
%r 12小时的时间
%R 显示小时和分钟:hh:mm
%S 十进制的秒数
%t 水平制表符
%T 显示时分秒:hh:mm:ss
%u 每周的第几天,星期一为第一天 (值从1到7,星期一为1)
%U 第年的第几周,把星期日作为第一天(值从0到53)
%V 每年的第几周,使用基于周的年
%w 十进制表示的星期几(值从0到6,星期天为0)
%W 每年的第几周,把星期一做为第一天(值从0到53)
%x 标准的日期串
%X 标准的时间串
%y 不带世纪的十进制年份(值从0到99)
%Y 带世纪部分的十制年份
%z,%Z 时区名称,如果不能得到时区名称则返回空字符。
%% 百分号
(2)使用asctime()进行格式转换
/*得到系统时间*/
time_t   cur;
struct tm          daytime;
cur = time((time_t*)NULL);
time(&cur);       
/*时间转换*/
daytime = *localtime(&cur);     
printf("%s",  asctime(&daytime));
输出为“Wed Feb 13 15:46:11 2016”
4、使用Windows API 函数GetLocalTime(精确到毫秒)
SYSTEMTIME sys;
GetLocalTime( &sys );
printf("%4d/%2d/%2d %2d:%2d:%2d.%3d\n",  
sys.wYear,sys.wMonth,sys.wDay,sys.wHour,sys.wMinute,sys.wSecond,sys.wMilliseconds); 
输出为“2016/5/16 10:13:23.234”
其中SYSTEMTIME结构体定义如下
typedef struct _SYSTEMTIME
{
WORD wYear;//年
WORD wMonth;//月
WORD wDayOfWeek;//星期,0为星期日,1为星期一,2为星期二……
WORD wDay;//日
WORD wHour;//时
WORD wMinute;//分
WORD wSecond;//秒
WORD wMilliseconds;//毫秒
}SYSTEMTIME,*PSYSTEMTIME;
以上四种方法在QT程序中均可使用!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Qt 获取当前时间 的相关文章

  • PX4-terrain_estimator

    by luoshi006 参考 xff1a https github com PX4 Firmware blob master src lib terrain estimation terrain estimator h PX4 位置估计中
  • 已归档博文收纳

    by luoshi006 欢迎交流 个人 Gitter 交流平台 xff0c 点击直达 xff1a L类 Learning GitHub Qt5 5 1 43 OpenCV2 4 10 环境配置PX4 开发环境 xff08 Ubuntu14
  • linux信号量

    1 信号量数据结构 union semun int val 整形变量 信号量初值 struct semid ds buf semid ds结构指针 unsigned short array 数组类型 struct seminfo buf 信
  • 单片机系统中的一种文字平滑(抗锯齿)显示方法

    这是之前一个项目中已实现的方法 xff0c 现在整理后拿出来分享 单片机系统中文字显示部分一般用的是用取模软件取出字模后输出到屏幕上显示 xff0c 这种方式显示的字体有锯齿 xff0c 在DPI低的显示屏上锯齿效果非常明显 对于单色屏来说
  • DIY个人智能家庭网关—— 路由器篇之刷机

    先选择合适的路由器型号 xff0c 要求有两个 xff0c 一 xff1a 有USB口 xff0c 二 xff1a 可以刷openwrt系统 xff0c 我的首选是newifi mini xff0c 比较喜欢折腾的可以刷openwrt官方固
  • 类中的域

    转自http book 51cto com art 201207 350797 htm 类的对象也称为这个类的实例 当创建一个对象时 xff0c 对象包含在类定义中包括的所有域 但是 xff0c 类定义中的域并不总是一样 一共有两种 有一种
  • Postman 插件介绍

    Postman介绍 Postman是google开发的一款功能强大的网页调试与发送网页HTTP请求 xff0c 并能运行测试用例的的Chrome插件 其主要功能包括 xff1a 模拟各种HTTP requests 从常用的 GET POST
  • 【2022阿里灵犀互娱】游戏测开笔试AC_Code

    测开笔试 xff0c 90分钟 xff0c 3道编程题 43 八股 xff0c 第二题输出格式模拟题 xff0c 就不贴了 T1 进制转换 题意 有一个数 xff0c 可能是2 xff5e 16进制的其中之一 xff0c 算出所有可能的结果
  • error while loading shared libraries: libopencv_imgcodecs.so.3.4

    最近给电脑重新安装了opencv3 4 10 xff0c 但是跑工程时却出现这个问题 xff0c 网上百度了一堆 xff0c 发现应该是库设置的问题 xff0c 但是到底是哪里出了问题 xff0c 怎么设置 xff0c 我根据我自己的实际情
  • 六、geotrellis按时间序列存储至hbase

    实现代码如下 xff1a import org apache camel scala dsl builder RouteBuilderSupport import geotrellis raster import geotrellis pr
  • 支持向量机svm及python测试

    from sklearn svm import SVR SVC from sklearn datasets import load boston from sklearn datasets import load wine from skl
  • mlp神经网络及python测试

    关于线性模型 xff1a y 39 61 w 0 x 0 43 w 0 x 0 43 43 w p x p 43 b 其中 xff0c y 39 表示对y的估算值 xff0c x 0 到x p 是样本特征值 w表示每个特征值的权重 xff0
  • linux 安装gdal(含hdf)记录

    一 准备工作 经实践 xff0c 在其他用户下存在某种问题 xff0c 可能是对Centos系统上不熟悉 xff0c 无法解决 xff0c 需在root用户下安装 xff09 xff1a su root 安装编译环境 sudo yum in
  • go语言多线程与并发编程

    go语言并发编程 在了解go语言的并发编程之前 xff0c 我们必须先了解并发和并行的概念 我们知道 xff0c 当启动一个应用的时候实际上是启动了一个进程 xff0c 通过该进程实现资源的调度和分配 xff0c 并且多个进程之间是相互隔离
  • Pycharm 中Available packages nothing to show

    国内源 xff1a 清华 xff1a https pypi tuna tsinghua edu cn simple 阿里云 xff1a http mirrors aliyun com pypi simple 中国科技大学 https pyp
  • 以太坊区块链的区块(Block)结构

    这里以以太坊区块链为基础进行讲解 直接看代码 xff1a 区块结构代码 xff1a block go 1 block的header type Header struct ParentHash common Hash 96 json 34 p
  • go语言连接mongodb数据库

    使用mongodb数据库之前需要先下载安装mongodb服务器端程序 xff0c 这里不再赘述 go语言下使用mongodb步骤如下 xff1a 1 下载mongodb连接驱动mgo 命令行下输入 xff1a go get gopkg in

随机推荐

  • 算法中的常用数学公式

    1 指数 指数是幂运算a a 0 中的一个参数 xff0c a为底数 xff0c n为指数 xff0c 指数位于底数的右上角 xff0c 幂运算表示指数个底数相乘 当n是一个正整数 xff0c a 表示n个a连乘 当n 61 0时 xff0
  • hbase出现org.apache.hadoop.hbase.PleaseHoldException: Master is initializing错误解决

    使用hbase创建namespace和table时提示该错误 xff0c 完整的错误日志如下 xff1a 按照网上的解决思路 xff1a 1 设置主机之间的NTP时间同步 2 修改hbase site xml配置文件 lt property
  • windows下hadoop的部署和使用

    本教程在windows10环境下安装配置hadoop 43 hbase 43 spark 一 下载压缩包 xff1a 1 JavaJDK xff0c 1 8以上 2 Hadoop2 8 3 xff0c 下载地址 xff1a http arc
  • 四、geotrellis发布TMS服务

    本章节将上一章节创建的瓦片发布为TMS服务 本章节将使用akka建立http服务并访问影像瓦片 使用maven构建测试案例 xff0c maven参见上一章节 具体代码如下 xff1a import geotrellis raster im
  • Pyspark实战(四)pyspark操作hbase

    环境配置 xff1a Spark 启动环境中添加 hbase 的 jar 包以及 spark examples的jar包 1 下载spark examples jar包 xff0c 地址https mvnrepository com art
  • 五、geotrellis实现栅格切片并存储至hbase

    部署环境可以参考本栏目的其他章节 1 maven代码如下 xff1a lt dependencies gt lt dependency gt lt groupId gt org apache camel lt groupId gt lt a
  • launch文件和package文件语法

    launch文件语法 参考 xff1a ROS入门之 浅谈launch 沐棋的博客 CSDN博客 roslaunch 补充 xff1a launch prefix 61 command prefix roslaunch 命令 的一个潜在的缺
  • ORB_SLAM2新增稠密建图代码笔记

    接上一篇博客 ORB SLAM2 43 kinect稠密建图实战项目总结 ORB SLAM2 43 kinect稠密建图实战项目总结 好好仔仔的博客 CSDN博客 本篇在此基础上对整个项目的逻辑结构以及代码实现进行梳理 orb slam2新
  • windows下C++学习推荐书籍

    推荐几本书给你们 xff0c 有空可以学习一下 xff1a C 43 43 编程相关 xff1a 1 C 43 43 Primer xff1a C 43 43 的工具书 2 Effective C 43 43 xff1a C 43 43 提
  • stm32IO口八种工作模式详细解析(附原理图)

    目录 工作模式介绍常用IO口工作模式分析实际应用 很多小伙伴们在初学stm32时都对stm32的IO口工作模式的原理和配置不了解 xff0c 所以我整理发表此篇文章作为自己复习和他人参考资料 xff08 注 xff1a 该文章参考了stm3
  • cmake之install总结(指定安装文件和安装位置)

    背景 cmake不仅可以构建可执行文件 xff0c 还可以安装 使用CMake xff0c 我们可以使用install 命令指定安装规则 只需要指定安装位置和待安装的目标文件 xff0c 十分简单 以cmake官方教程为例 xff08 3
  • 工训备赛日志(二)——上位机与stm32之间的一种简易通信方式

    工训备赛日志 xff08 二 xff09 上位机与stm32之间的一种简易通信方式 一 摘要 上位机检测到物体之后 xff0c 要将信号传递给控制底层的STM32 xff0c 这里提出了一种基于读取电平和外部中断的简易通信方式 此方法占用五
  • 【2】中断方式和查询方式的区别

    1 中断方式 xff1a 接收数据时 xff0c MCU转入中断服务程序 xff0c 再处理接收到的数据 xff1b CMT2300A接收数据的中断 xff1a 检测RX FIFO TH 中断 xff0c 一旦有效表示FIFO 已经被填入预
  • Ubantu 安装到VMware详解

    想要在VMware中运行Linux系统 xff0c 那么就需要Linux系统安装到VMware虚拟机上面 在这里 xff0c 以把ubantu16 04安装到VMware虚拟机中为教程进行图文讲解 xff0c 共分为三个步骤 xff0c 分
  • 数字直流电源设计

    设计目标 xff1a 市电输入 开关频率50KHz 60V 20A 1200W输出 输出电压纹波0 2 输出电流纹波20 效率0 8 1 确定输入电压 经查阅 xff0c 我国市电电压标准 xff0c 220V单相供电时 xff0c 为额定
  • CAN报文格式

    CAN协议的报文传输过程中有 数据帧 远程帧 错误帧 过载帧和帧间隔 nbsp nbsp nbsp nbsp nbsp nbsp nbsp 1 数据帧 用于发送节点向接收节点传送数据的帧 nbsp nbsp nbsp nbsp nbsp n
  • FreeRTOS调度器启动

    nbsp 在真正启动调度器之前 先创建空闲任务 初始化一些变量 真正启动调度器的函数是xPortStartScheduler 启动调度器 void vTaskStartScheduler void BaseType t xReturn if
  • 安装novnc,并加入开机自启

    1 安装git工具 apt get install git y 2 下载novnc git clone https github com novnc noVNC 3 ls 查看 xff0c 已经下载完成 4 vim novnc sh把启动命
  • 【C++初阶11-模版进阶】解锁C++模版更多玩法

    今天 xff0c 带来模版进阶的讲解 主要讲解 xff1a 非类型模版参数模版的特化模版的分离编译 文中不足错漏之处望请斧正 xff01 非类型模版参数 模版参数分为类型模版参数和非类型模版参数 可以这么理解 xff1a 前者是为了泛化类型
  • Qt 获取当前时间

    1 获取带日期的时间 xff0c 使用QDateTime类 QDateTime current date time 61 QDateTime currentDateTime QString current date 61 current d