一、使用总结

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. HTTP 学习

    *** *** http://www.w3school.com.cn/xml/xml_http.asp *** *** http://www.cnblogs.com/shenliang123/arch ...

  2. JavaScript 五种(构造方式)继承

    一.对象冒充 function Parent(username){ this.username = username; this.hello = function(){ alert(this.user ...

  3. Kafka Producer相关代码分析【转】

    来源:https://www.zybuluo.com/jewes/note/63925 @jewes 2015-01-17 20:36 字数 1967 阅读 1093 Kafka Producer相关 ...

  4. 一张图读懂https加密协议

    搭建CA服务器和iis启用https:http://blog.csdn.net/dier4836/article/details/7719532 一张图读懂https加密协议 https是一种加密传输 ...

  5. [译]git reset

    git reset 如果说git revert是一个安全的撤销方式, 那么git reset就是一个非常危险的方法了. 当你使用git reset撤销的时候, 你没有可能在回到最初了-他是一个永久的不 ...

  6. Backbone☞View中的events...click事件失效

    <div id="container"> <input type="button" id="test_click" val ...

  7. 给select添加自定义值和选项

    添加选项: document.getElementById("id_select").options.add(new Option("name", " ...

  8. 【MongoDB】MongoDb的“not master and slaveok=false”错误及解决方法

    链接mongodb报错如下 2016-03-14T16:26:00.912+0800 E QUERY [thread1] Error: listDatabases failed:{ "ok& ...

  9. “北航Clubs”功能规格说明书

    1.项目目标说明: 北航Clubs的初衷是服务社团,服务学生,满足社团与学生的信息互通的需求.社团管理运营方便的需求. 建设网站的目的是使学生可以在一个权威可信的网站上获取到社团实时的动态,社团活动的 ...

  10. sublime linux下无法输入中文

    cd ~ vim sublime_imfix.c 输入 #include <gtk/gtkimcontext.h> void gtk_im_context_set_client_windo ...