一、使用总结

1.配置文件生成在exe目录下。

二、代码

#ifndef CONFIGURE_H
#define CONFIGURE_H
#include <QString>
#include <QVariant>
#include <QMap> class Configure
{
public:
Configure();
void init();
void setPortName(QString portName);
QString getPortName(); void setBaudRate(QString baudRate);
QString getBaudRate(); void setResponseTime(int responseTime);
int getResponseTime(); void setNumberOfRetries(int numBerOfRetries);
int getNumberOfRetries();
private:
QString configureFilePath_; }; #endif // CONFIGURE_H
#include "configure.h"
#include <QSettings>
#include <QDebug>
#include <QCoreApplication> const QString configureFileName="config.conf";
Configure::Configure()
{
configureFilePath_=QCoreApplication::applicationDirPath()+"/"+configureFileName;
}
void Configure::init()
{
QSettings settings(configureFilePath_, QSettings::IniFormat); if(settings.value ("Modbus/PortName").toString ()=="")
{
settings.setValue("Modbus/PortName","ttyUSB0");
}
if(settings.value ("Modbus/BaudRate").toString ()=="")
{
settings.setValue("Modbus/BaudRate","");
}
if(settings.value ("Modbus/ResponseTime").toString ()=="")
{
settings.setValue("Modbus/ResponseTime",);
}
if(settings.value ("Modbus/NumberOfRetries").toString ()=="")
{
settings.setValue("Modbus/NumberOfRetries",);
} }
void Configure::setPortName(QString portName)
{
QSettings settings(configureFilePath_, QSettings::IniFormat);
settings.setValue("Modbus/PortName",portName);
} QString Configure::getPortName()
{
QSettings settings(configureFilePath_, QSettings::IniFormat);
return settings.value("Modbus/PortName").toString();
} void Configure::setBaudRate(QString baudRate)
{
QSettings settings(configureFilePath_, QSettings::IniFormat);
settings.setValue("Modbus/BaudRate",baudRate);
} QString Configure::getBaudRate()
{
QSettings settings(configureFilePath_, QSettings::IniFormat);
return settings.value("Modbus/BaudRate").toString();
} void Configure::setResponseTime(int responseTime)
{
QSettings settings(configureFilePath_, QSettings::IniFormat);
settings.setValue("Modbus/ResponseTime",responseTime);
} int Configure::getResponseTime()
{
QSettings settings(configureFilePath_, QSettings::IniFormat);
return settings.value("Modbus/ResponseTime").toInt ();
} void Configure::setNumberOfRetries(int numBerOfRetries)
{
QSettings settings(configureFilePath_, QSettings::IniFormat);
settings.setValue("Modbus/NumberOfRetries",numBerOfRetries);
} int Configure::getNumberOfRetries()
{
QSettings settings(configureFilePath_, QSettings::IniFormat);
return settings.value("Modbus/NumberOfRetries").toInt ();
}
[Modbus]
BaudRate=
NumberOfRetries=
PortName=ttyUSB0
ResponseTime=

Qt ini配置文件读写的更多相关文章

  1. 【转载】C++针对ini配置文件读写大全

    http://blog.csdn.net/hgy413/article/details/6666374# ini文件(Initialization file),这种类型的文件中通常存放的是一个程序的初 ...

  2. vc ini配置文件读写

    ini文件(即Initialization file),这种类型的文件中通常存放的是一个程序的初始化信息.ini文件由若干个节(Section)组成,每个Section由若干键(Key)组成,每个Ke ...

  3. C# INI配置文件读写类

    ini是一种很古老的配置文件,C#操作ini文件借助windows底层ini操作函数,使用起来很方便: public class IniHelper { [DllImport("kernel ...

  4. C++[类设计] ini配置文件读写类config

      //in Config.h #pragma once #include <windows.h> #include <shlwapi.h> #pragma comment(l ...

  5. 纯C#的ini格式配置文件读写

    虽然C#里都是添加app.config 并且访问也很方便 ,有时候还是不习惯用他.那么我们来做个仿C++下的那种ini配置文件读写吧,其他人写的都是调用非托管kernel32.dll.我也用过 但是感 ...

  6. c#读写ini配置文件示例

    虽然c#里都是添加app.config 并且访问也很方便 ,有时候还是不习惯用他.那么我们来做个仿C++下的那种ini配置文件读写吧     其他人写的都是调用非托管kernel32.dll.我也用过 ...

  7. C#操作读写INI配置文件

    一个完整的INI文件格式由节(section).键(key).值(value)组成.示例如:[section]key1=value1key2=value2; 备注:value的值不要太长,理论上最多不 ...

  8. Qt读写三种文件,QSettings读ini配置文件,QJsonDocument读JSON文件,QDomDocument读xml文件

    第一种INI配置文件 .ini 文件是Initialization File的缩写,即初始化文件. 除了windows现在很多其他操作系统下面的应用软件也有.ini文件,用来配置应用软件以实现不同用户 ...

  9. QT 读写.ini配置文件

    当需要存放的数据量较少时合适使用.ini配置文件. #include <QCoreApplication> #include <QSettings> void SystemSe ...

随机推荐

  1. ehcache memcache redis 三大缓存男高音

    最近项目组有用到这三个缓存,去各自的官方看了下,觉得还真的各有千秋!今天特意归纳下各个缓存的优缺点,仅供参考!  Ehcache 在java项目广泛的使用.它是一个开源的.设计于提高在数据从RDBMS ...

  2. mysql 导入sql文件,source命令

    转自:http://blog.sina.com.cn/s/blog_610997850100mwv8.html 今天碰到个问题要用phpmyadmin导入1G的数据,但是在怎么都导入不了,用命令行就可 ...

  3. [译]使用6to5,让今天就来写ES6的模块化开发!

    http://es6rocks.com/2014/10/es6-modules-today-with-6to5/?utm_source=javascriptweekly&utm_medium= ...

  4. VTK初学一,b_PolyVertex_CellArray多个点的绘制

    #ifndef INITIAL_OPENGL #define INITIAL_OPENGL #include <vtkAutoInit.h> VTK_MODULE_INIT(vtkRend ...

  5. ajax基础了解

    使用Ajax的最大优点,就是能在不更新整个页面的前提下维护数据.这使得Web应用程序更为迅捷地回应用户动作,并避免了在网络上发送那些没有改变过的信息.AJAX即“Asynchronous JavaSc ...

  6. 移动终于hold不住了 联合微信正式推出流量红包业务

    微信的迅猛发展终于让中移动hold不住了,今日移动广东分公司联合微信正式推出流量红包业务,流量红包分为1元10M(10个整售).3元50M(5个整售)两种.广东的微信朋友有福了,赶紧去抢红包吧!微信& ...

  7. dfs序 + RMQ = LCA

    dfs序是指你用dfs遍历一棵树时,每个节点会按照遍历到的先后顺序得到一个序号.然后你用这些序号,可以把整个遍历过程表示出来. 如上图所示,则整个遍历过程为1 2 3 2 4 5 4 6 4 2 1 ...

  8. Lexicography(数学推论>>求按字典序排第k个排列)

    Lexicography Time Limit:1000MS     Memory Limit:131072KB     64bit IO Format:%lld & %llu Submit  ...

  9. bug--java访问hdfs (Server IPC version 9 cannot communicate with client version 4 错误)

    1. 今天想做一个hdfs的java工具类,但是在连接hdfs的时候,报如下错误: Exception in thread "main" org.apache.hadoop.ipc ...

  10. iOS开发——项目篇—高仿百思不得姐

    01 一.包装为导航控制器 UINavigationController *nav = [[UINavigationController alloc] initWithRootViewControll ...