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. ice框架应用记录-框架说明

    ice框架是一个解决分布式问题的框架,包括应用与管理工具两部分, 应用部分主要包括: 1,注册服务,用来管理所有节点:为了可靠性,一般会开启两个注册服务,一个主注册服务一个从注册服务 2,节点,就是开 ...

  2. unix shell(壳)的简单实现

    用户程序通过调用操作系统提供的系统调用(system call)API 来获得操作系统提供的各种服务.但使用 API 需要手动编写程序.对于不编程序.且需要与操作系统进行交互的用户,又如何使用操作系统 ...

  3. 【34.40%】【codeforces 711D】Directed Roads

    time limit per test2 seconds memory limit per test256 megabytes inputstandard input outputstandard o ...

  4. Android之高仿手机QQ聊天

    源代码下载 转载请注明出处,谢谢! 最终版已上传.优化下拉刷新.增加来消息声音提示.主界面改成ViewPager,实现左右滑动.新增群组.最近会话显示条数,开始上班了,不再修改了.谢谢! 国庆这几天, ...

  5. 自己动手编写一个VS插件(七)

    作者:朱金灿 来源:http://blog.csdn.net/clever101 继续开发VS插件.今天在添加ATL控件时出现一个"未能返回新代码元素"的错误,如下图: 解决办法是 ...

  6. 将您的Cordova应用程序打包

    参考 https://github.com/MicrosoftDocs/cordova-docs/blob/master/articles/tutorial-package-publish/tutor ...

  7. struts2 no extension(excludePattern)

    采用struts2 小伙伴非常希望更改或删除action扩展,本文将帮助你实现 struts2-core-2.3.16.jar , 下载链接: http://repo1.maven.org/maven ...

  8. 如何获得 Qt窗口部件在主窗口中的位置--确定鼠标是否在某一控件上与在控件上的位置

    用Qt Creator 设计程序时,最方便的就是ui设计器,可以很容易的得到想要的布局. 但是这样自动布局带来的后果是很难知道窗口中某一部件在主窗口中的相对位置. 在处理子窗口鼠标事件时变的很麻烦.主 ...

  9. 1.在windows下安装rabbitMQ

    a .RabbitMQ是用erLang语言写的,所以我们在安装rabbitMQ之前要先安装erLang. 要安装最新版本的请分别前往 www.erlang.org和www.rabbitmq.com网站 ...

  10. hdu1180奇怪的楼梯……bfs迷阵……wa该16二级,我太渣滓

    #include<iostream> #include<queue> #include<cstring> using namespace std; int row, ...