一、使用总结

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. hibernate 批量增加 修改 删除

    4.2  Hibernate的批量处理 Hibernate完全以面向对象的方式来操作数据库,当程序里以面向对象的方式操作持久化对象时,将被自动转换为对数据库的操作.例如调用Session的delete ...

  2. Linux基本使用(1)-使用GCC编译C语言程序

  3. linux下如何安装charles

    charles是很好的抓包工具. 如何安装呢? 可以去官网下载:http://www.charlesproxy.com/download/ 如果是Debian系列的,可以直接用apt-get 安装 h ...

  4. ls按时间排序输出文件列表

    文件转自:http://www.2cto.com/os/201303/197829.html ls按时间排序输出文件列表   首先,ls --help查看ls相关的与时间排序相关的参数:   > ...

  5. hdu5024 Wang Xifeng's Little Plot (水

    http://acm.hdu.edu.cn/showproblem.php?pid=5024 网络赛 Wang Xifeng's Little Plot Time Limit: 2000/1000 M ...

  6. vijos1740 聪明的质监员 (二分、区间求和)

    http://www.rqnoj.cn/problem/657 https://www.vijos.org/p/1740 P1740聪明的质检员 请登录后递交 标签:NOIP提高组2011[显示标签] ...

  7. 安装windows后重新修复grub2的引导

    前段时间,我的用的双系统windows8.1 + fedora 21 workstation,使用grub2引导fedora和windows8.1的启动.由于一些原因,导致我的windows8.1无法 ...

  8. 深入浅出的javascript的正则表达式学习教程

    深入浅出的javascript的正则表达式学习教程 阅读目录 了解正则表达式的方法 了解正则中的普通字符 了解正则中的方括号[]的含义 理解javascript中的元字符 RegExp特殊字符中的需要 ...

  9. Linux运维初级教程(二)账户与安全

    知识点 用户ID为UID,组ID为GID,UID=0表示超级管理员即root. 一个用户只可以加入一个基本组,但是可以同时加入多个附加组. 创建用户时,系统默认会自动创建同名的组,并设置用户加入该基本 ...

  10. HomeWork2

    程序一: 1 public intfindLast(int[] x, inty) { 2 //Effects: If x==null throw NullPointerException 3 // e ...