当前位置:编程学习 > C/C++ >>

QSettings的简单操作

QSettings类关联了相关文件(不同的平台,文件类型不同),以保存应用程序的一些设置,如下是关于QSettings的一些简单的测试,值得探讨的地方还请不吝指教
[cpp]  
#include <QtCore/QCoreApplication>  
#include <QtCore/QSettings>  
#include <QStringList>  
int main(int argc, char *argv[])  
{  
    QCoreApplication a(argc, argv);  
      
    QSettings settings("CSUST.Embedded", "settings");  // settings文件标识  
      
//  a.setOrganizationName("CSUST.Embedded");   // 也可以这样设置settings的文件标识  
//  a.setApplicationName("settings");  
//  QSettings settings();  
      
    // 简单的插入设置对  
    settings.setValue("数值", 40);  
    printf("%s\n", "测试简单的插入");  
    printf("%d\n", settings.value("数值").toInt());  
  
    // 简单的组应用  
    settings.beginGroup("myGroup");  
    settings.setValue("数值", 50);  
//  settings.setValue("数值", 55);    // 在组中,键值不能重复用来定义“设置对”,重复的结果是(55)覆盖原来的值(50)  
    settings.endGroup();             // 在组外可以定义和组中键值相同的“设置对”  
  
    settings.beginGroup("myGroup");  
    printf("%d\n", settings.value("数值").toInt());  
    settings.endGroup();  
  
    printf("%s\n", "测试组应用");  
    printf("%d\n", settings.value("数值").toInt());  
  
    // 简单的数组应用  
    QStringList list;  
    list.append("AAA");  
    list.append("BBB");  
    list.append("CCC");  
    list.append("DDD");  
  
    settings.beginWriteArray("myArray");  
    for(int i = 0; i < list.count(); i++)  
    {  
        settings.setArrayIndex(i);  
        settings.setValue("字母串", list.at(i));   // 数组中准许键重名  
    }  
    settings.endArray();  
  
//  settings.setValue("字母串", "EEE");         //  数组外可以定义和数组中键重名的“设置对”  
  
    printf("%s\n", "测试数组应用");  
    int size = settings.beginReadArray("myArray");  
    for(int i = 0; i < size; i++)  
    {  
        settings.setArrayIndex(i);  
        printf("%s\n", settings.value("字母串").toString().toAscii().data());  
    }  
    settings.endArray();  
  
//  printf("%s\n", settings.value("字母串").toString().toAscii().data());    
      
    return a.exec();  
}  
 
只是简单的测试,为了方便,没有给字符串加tr()以迎合国际化
补充:软件开发 , C++ ,
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,