用Qt写界面时,难免会进行本地信息的保存,可以使用轻量级数据库sqlite,也可以使用QSettings读写配置文件。
    如何来进行读写呢?如下,使用QSettings写一个通用的读写方法:
 bool Util::writeInit(QString path, QString user_key, QString user_value)
{
if(path.isEmpty() || user_key.isEmpty())
{
return false;
}
else
{
//创建配置文件操作对象
QSettings *config = new QSettings(path, QSettings::IniFormat);
 
//将信息写入配置文件
config->beginGroup("config");
config->setValue(user_key, user_value);
config->endGroup();
 
return true;
}
 
bool Util::readInit(QString path, QString user_key, QString &user_value)
{
user_value = QString("");
if(path.isEmpty() || user_key.isEmpty())
{
return false;
}
else
{
//创建配置文件操作对象
QSettings *config = new QSettings(path, QSettings::IniFormat);
 
//读取用户配置信息
user_value = config->value(QString("config/") + user_key).toString();
 
return true;
}  
}
 
//获取界面用户输入的配置内容
QString address = address_line_edit->text();  //地址
QString port = port_line_edit->text();  //端口
 
向user.ini配置文件中写入地址、端口
bool is_address = Util::writeInit(QString("./user.ini"), ADDRESS, address);
bool is_port = Util::writeInit(QString("./user.ini"), PORT, port);
 
从user.ini配置文件中读取地址、端口
QString address_value;
QString port_value;
bool is_address = Util::readInit(QString("./user.ini"), ADDRESS, address_value);
bool is_port = Util::readInit(QString("./user.ini"), PORT, port_value);
 
效果如下:
 
注:
    技术在于交流、沟通,转载请注明出处并保持作品的完整性。

QSettings操作配置文件的更多相关文章

  1. QT QSettings读写配置文件

    QT QSettings读写配置文件 需要用一个配置文件来保存程序的初始值,同时也需要做保存修改后的值. 那么借助于QSetting 就可以达到目的. 注意,生成的是 ini 文件! //1.创建和读 ...

  2. 操作配置文件Properties

    // */ // ]]>   操作配置文件Properties Table of Contents 1 定义 2 读取配置值 3 修改和保存配置 4 注意 1 定义 csharp中在Settin ...

  3. day20 二十、加密模块、操作配置文件、操作shell命令、xml模块

    一.加密模块 1.hashlib模块:加密 ①有解密的加密方式 ②无解密的加密方式:碰撞检查 -- 1)不同数据加密后的结果一定不一致 -- 2)相同数据的加密结果一定是一致的 import hash ...

  4. Java中Properties类的操作配置文件

    知识学而不用,就等于没用,到真正用到的时 候还得重新再学.最近在看几款开源模拟器的源码,里面涉及到了很多关于Properties类的引用,由于Java已经好久没用了,而这些模拟器大多用 Java来写, ...

  5. ASP.NET 操作配置文件

    1.配置文件的各种操作 http://www.cnblogs.com/shimeng3344518/archive/2007/04/23/723999.html 2. http://www.jb51. ...

  6. QT 登录记住密码方法之一:Qt QSettings读写配置文件

    不过本文写的是明文保存,最好还是加密一下,以防文件被非法读取 /**登录初始化的时候处理这部分操作*/ Settings cfg("user.ini",QSettings::Ini ...

  7. Python操作配置文件configparser模块

    在实际的开发过程中,我们常有操作ini格式和conf格式配置文件的操作,Python为我们提供了configparser模块,方便我们对配置文件进行读写操作. config.ini配置文件内容如下: ...

  8. 纯C++实现操作配置文件(告别跨平台问题)

    CConfig.h #ifndef _CCONFIG_H #define _CCONFIG_H #include <iostream> #include <string> #i ...

  9. PHP获取和操作配置文件php.ini的几个函数

    当无法修改php.ini配置文件怎么办,莫担心. php有一套设置和获取配置信息的函数. 1.ini_get()获取配置参数,ini_set()设置配置参数 <?php

随机推荐

  1. AVOS Cloud Hackathon - SegmentFault

    AVOS Cloud Hackathon - SegmentFault AVOS Cloud Hackathon

  2. NYoj-街区最短路径问题

    街区最短路径问题 时间限制:3000 ms  |  内存限制:65535 KB 难度:4 描写叙述 一个街区有非常多住户,街区的街道仅仅能为东西.南北两种方向. 住户仅仅能够沿着街道行走. 各个街道之 ...

  3. hdu4513之manacher算法

    吉哥系列故事——完美队形II Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 65535/32768 K (Java/Others) T ...

  4. 将vs屏幕上内容重定向到一个log文本中

    在需要打印的屏幕内容前面加上一句话: freopen("debug.txt","w",stdout); 结束部分关掉他: fclose(stdout); 参考 ...

  5. linux常用命令系列—cp 复制文件与文件夹

    原文地址:http://blog.chinaunix.net/xmlrpc.php?r=blog/article&uid=2272&id=37363 指令名称:cp(copy)功能介绍 ...

  6. ZOJ 3204 Connect them MST-Kruscal

    这道题目麻烦在输出的时候需要按照字典序输出,不过写了 Compare 函数还是比较简单的 因为是裸的 Kruscal ,所以就直接上代码了- Source Code : //#pragma comme ...

  7. 笔记之Cyclone IV 第一卷第二章Cyclone IV器件的逻辑单元和逻辑阵

    逻辑单元 (LE) 在 Cyclone IV 器件结构中是最小的逻辑单位.LE 紧密且有效的提供了高级功能的逻辑使用.每个 LE 有以下特性 ■ 一个四口输入的查找表 (LUT),以实现四种变量的任何 ...

  8. USB键盘数据解析

    以前用过的一个嵌入式设备使用USB键盘作为输入.当时还研究了一下USB协议,现在都快忘得差不多了.这里整理一下当时找到的关于USB键盘数据方面的资料. 主机与USB键盘建立连接后,定时从键盘获取8字节 ...

  9. Linux定义系统提示符的变量:PS1

  10. 使用storyboard实现页面跳转,简单的数据传递

    由于最近才接触到IOS,苹果已经建议storyboard来搭建所有界面了,于是我 也追随时尚,直接开始使用storyboard.(不料在涉及到页面跳转的时候,遇到的问题是:点击后没有任何反应)众所周知 ...