QT在Linux环境下读取和设置系统时间

本文博客链接:http://blog.csdn.NET/jdh99,作者:jdh,转载请注明.

环境

主机:Fedora12

开发软件:QT

读取系统时间

  1. void moreidDialog::refresh_time()
  2. {
  3. QDateTime time;
  4. txt_time->setText(time.currentDateTime().toString("yyyy") + "." + \
  5. time.currentDateTime().toString("M") + "." + \
  6. time.currentDateTime().toString("d") + "." + \
  7. time.currentDateTime().toString("h") + "." + \
  8. time.currentDateTime().toString("m"));
  9. }

读取到分,时间间隔用".",最终读取并显示的效果:2011.12.27.9.14

 
设置系统时间
  1. //保存时间键
  2. void moreidDialog::slot_save_time_key()
  3. {
  4. QDateTime time;
  5. QString str = txt_time->text();
  6. //判断格式是否正确
  7. if (str.count(".") != 4)
  8. {
  9. txt_time->setText(tr("ge shi cuo wu"));
  10. return;
  11. }
  12. int i = 0,j = 0;
  13. i = str.indexOf(".");
  14. QString year = str.mid(0,i);
  15. j = str.indexOf(".",i + 1);
  16. QString month = str.mid(i + 1,j - i - 1);
  17. i = j;
  18. j = str.indexOf(".",i + 1);
  19. QString day = str.mid(i + 1,j - i - 1);
  20. i = j;
  21. j = str.indexOf(".",i + 1);
  22. QString hour = str.mid(i + 1,j - i - 1);
  23. i = j;
  24. j = str.indexOf(".",i + 1);
  25. QString min = str.mid(i + 1,j - i - 1);
  26. bool ok = false;
  27. year.toInt(&ok);
  28. if (ok == false)
  29. {
  30. txt_time->setText(tr("ge shi cuo wu"));
  31. return;
  32. }
  33. month.toInt(&ok);
  34. if (ok == false)
  35. {
  36. txt_time->setText(tr("ge shi cuo wu"));
  37. return;
  38. }
  39. day.toInt(&ok);
  40. if (ok == false)
  41. {
  42. txt_time->setText(tr("ge shi cuo wu"));
  43. return;
  44. }
  45. hour.toInt(&ok);
  46. if (ok == false)
  47. {
  48. txt_time->setText(tr("ge shi cuo wu"));
  49. return;
  50. }
  51. min.toInt(&ok);
  52. if (ok == false)
  53. {
  54. txt_time->setText(tr("ge shi cuo wu"));
  55. return;
  56. }
  57. str = "date -s " + month + "/" + day + "/" + year;
  58. system(str.toLatin1().data());
  59. str = "date -s " + hour + ":" + min + ":" + "00";
  60. system(str.toLatin1().data());
  61. //强制写入到CMOS
  62. system("clock -w");
  63. }
 

同步系统时钟与硬件时钟时间命令:

硬件时钟同步到系统时钟:hwclock --hctosys
系统时钟同步到硬件时钟:hwclock -systohc

http://blog.csdn.net/jdh99/article/details/7102196

QT在linux环境下读取和设置系统时间(通过system来直接调用Linux命令,注意权限问题)的更多相关文章

  1. DELPHI下读取与设置系统时钟

    在DELPHI下读取与设置系统时钟 很多朋友都想在自己的程序中显示系统时间 这在DELPHI中十分容易 利用DateToStr(Date)及TimeToStr(Time)函数即可实现. 二者的函数原型 ...

  2. linux环境下时区无法设置(UTC无法更改为CST)的问题解决

    在进行linux下修改时区的时候 总是修改不了 修改成 Asia/Shanghai  但是 时区总是 +0000 却不是想要的+0800 按照网上的方法 A方法:tzselect:执行tzselect ...

  3. [树莓派(raspberry pi)] 01、在linux环境下给树莓派安装系统及入门各种资料

    1.预准备 进入帮助页面https://www.raspberrypi.org/help/,可以直接看到GET START WITH PASPBERRY PI,点击进入: 接下来会引导你检查配件是否齐 ...

  4. 多线程编程之Linux环境下的多线程(二)

    上一篇文章中主要讲解了Linux环境下多线程的基本概念和特性,本文将说明Linux环境下多线程的同步方式. 在<UNIX环境高级编程>第二版的“第11章 线程”中,提到了类UNIX系统中的 ...

  5. 在LINUX环境下定时执行php脚本

    1. 使用Crontab定时执行linux环境下的php脚本文件 Cron,它是一个linux下的定时执行工具.根用户以外的用户可以使用 crontab 工具来配置 cron 任务.所有用户定义的 c ...

  6. 5.6 date:显示与设置系统时间

    date命令 用于显示当前的系统时间或设置系统时间. date [选项] +[日期格式]   date命令的参数选项及说明 OPTION参数选项-d 时间字符串 显示指定字符串所描述的时间,而非当前时 ...

  7. 教你如何在Kali Linux 环境下设置蜜罐?

    导读 Pentbox是一个包含了许多可以使渗透测试工作变得简单流程化的工具的安全套件.它是用Ruby编写并且面向GNU/Linux,同时也支持Windows.MacOS和其它任何安装有Ruby的系统. ...

  8. Linux环境下Oracle安装参数设置

    前面讲了虚拟机的设置和OracleLinux的安装,接下来我们来说下Oracle安装前的准备工作.1.系统信息查看系统信息查看首先服务器ip:192.168.8.120服务器系统:Oracle Lin ...

  9. Linux环境下Eclipse对C++新特性的支持设置

    Linux环境下Eclipse对C++新特性的支持设置     今天写一个简单的关于C11中的array容器的测试程序如下, #include <iostream> #include &l ...

随机推荐

  1. POJ 3904(容斥原理)

    Sky Code Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 1750   Accepted: 545 Descripti ...

  2. 常用软件的安装(windows/linux)

    1. matlab 2016b (两个 iso 文件)(windows) MATLAB R2016b 安装教程 2. clion 在 ubuntu 下的安装 ubuntu 14.04 Clion201 ...

  3. Node child_process Study.2

    child_process 模块用于新建子进程.子进程的运行结果存储在系统缓存之中,等到子进程运行结束之后,主进程再用回调函数读取子进程的运行结果 1.exec() exec 方法用于执行base命令 ...

  4. 使用Visual Studio 2010 一步一步创建Powershell Module 和 Cmdlet

    现在就用C#写一个超级简单的Module和Cmdlet 1. 在VS中创建一个Library的项目 文件->新建->项目->C#->Class Library 在这里给我们的C ...

  5. yii2.0获取最后一条ID

    $r_id=Yii::$app->db->getLastInsertID();

  6. HDU 2842 Chinese Rings(矩阵高速功率+递归)

    职务地址:HDU 2842 这个游戏是一个九连环的游戏. 如果当前要卸下前n个环.由于要满足前n-2个都卸下,所以要先把前n-2个卸下.须要f(n-2)次.然后把第n个卸下须要1次,然后这时候要卸下第 ...

  7. C# VS 2010创建、安装、调试 windows服务(windows service)

    在一个应用程序中创建多个 windows 服务的方法和 1083 的解决办法 错误解决方案 ------------------------------------------------------ ...

  8. C# WPF MVVM QQ密码管家项目(8,完结篇:自动输入QQ号、密码)

    原文:C# WPF MVVM QQ密码管家项目(8,完结篇:自动输入QQ号.密码) 目录: 1,界面设计 2,数据模型的建立与数据绑定 3,添加QQ数据 4,修改QQ数据 5,删除QQ数据 6,密码选 ...

  9. OpenMP中的同步和互斥

    在多线程编程中必须考虑到不同的线程对同一个变量进行读写访问引起的数据竞争问题.如果线程间没有互斥机制,则不同线程对同一变量的访问顺序是不确定的,有可能导致错误的执行结果. OpenMP中有两种不同类型 ...

  10. wpf XMAL中隐藏控件

    原文:wpf XMAL中隐藏控件 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/a771948524/article/details/9264569 ...