QTsettings的配置文件设置

时间:2016-04-25 11:32:58

标签: c++ qt qt4

我有一个配置文件,其中包含方法名称及其在每个配置文件之间的关系

void Method::loadFrom(Settings &set, bool ownGroup)
{
    Settings s("profiles.ini");
    s.beginGroup("Profiles");
    foreach (const QString &group, s.childGroups()) {
        s.beginGroup(group);
        Profile *profile = new Profile();
        profile->setObjectName(group);
        profile->load(s);
        s.endGroup();

        m_currentProfileManager->m_Profiles << profile;
    }
    EraObject::staticLoadFrom(set, this, ownGroup);

}

void Method::saveTo(Settings &set, bool ownGroup, bool force)
{
    Settings s("profiles.ini");
    s.beginGroup("Profiles");
    foreach(Profile * profile, m_currentProfileManager->m_Profiles) {
        s.beginGroup(profile->profilename());
        profile->save(s);
        s.endGroup();
    }
    s.endGroup();
    s.sync();

    EraObject::staticSaveTo(set, this, ownGroup, force);

}

现在的当前个人资料是

[Profiles]

    %20Default\Ta=@Variant(\0\0\0\x87\x41\xa0\0\0)
    %20Default\Te=@Variant(\0\0\0\x87\x42@\0\0)
    %20Default\Texp=@Variant(\0\0\0\x87\x42\x18\0\0)
    %20Default\dirty=0
    %20Default\lim1=@Variant(\0\0\0\x87\0\0\0\0)
    %20Default\lim2=@Variant(\0\0\0\x87\0\0\0\0)
    %20Default\objectName=" Default"
    %20Default\offset=@Variant(\0\0\0\x87\0\0\0\0)
    %20Default\profilename=" Default"
    yg\Ta=@Variant(\0\0\0\x87\x41\xa0\0\0)
    yg\Te=@Variant(\0\0\0\x87\x42@\0\0)
    yg\Texp=@Variant(\0\0\0\x87\x42\x18\0\0)
    yg\dirty=1
    yg\lim1=@Variant(\0\0\0\x87\0\0\0\0)
    yg\lim2=@Variant(\0\0\0\x87\0\0\0\0)
    yg\objectName=yg
    yg\offset=@Variant(\0\0\0\x87\0\0\0\0)
    yg\profilename=yg
    yu\Ta=@Variant(\0\0\0\x87\x41\xa0\0\0)
    yu\Te=@Variant(\0\0\0\x87\x42@\0\0)
    yu\Texp=@Variant(\0\0\0\x87\x42\x18\0\0)
    yu\dirty=1
    yu\lim1=@Variant(\0\0\0\x87\0\0\0\0)
    yu\lim2=@Variant(\0\0\0\x87\0\0\0\0)
    yu\objectName=yu
    yu\offset=@Variant(\0\0\0\x87\0\0\0\0)
    yu\profilename=yu

我为每个方法名称提供了一个配置文件,其中包含defaultyu

我希望每个method name生成自己的个人资料并加载并保存。 目前,所有方法都会加载错误的same profile设置。

我希望每种方法都有自己的一组配置文件。

Method is just a qstring. 

0 个答案:

没有答案