Qt——软件设置参数文件快速读取

每个软件多多少少都会存在一些自己的参数,需要依靠配置文件对软件进行后台改动,当参数数量不是很多的时候解析不是很困难,但是如果参数数量比较多的时候在解析的时候会比较麻烦的。

.ini 文件是Initialization File的缩写,即初始化文件,是windows的系统配置文件所采用的存储格式,统管windows的各项配置,一般用户就用windows提供的各项图形化管理界面就可实现相同的配置了。但在某些情况,还是要直接编辑ini才方便。所以我们参数配置文件使用的是ini文件

整体的思路是将ini配置文件使用QFile读入,然后按照我们写的固定格式进行解析放入到ini文件中。
下边是我们ini文件的格式。使用[]设置类别,具体参数使用等号进行赋值。

[parameter]
Length = 1
Width = 2
Weight = 3
Volume = 4

下边我们对上边参数文件进行解析,对文件进行一行一行读取,判断该行等式中存在等号我们就使用QMap对变量名称与数值进行存储

QMap<Key,T>是Qt容器类型的一种,它通过(Key, value)存储一对值,并通过Key可以查找与之关联的value的值。

QMap<QString, QString> params;

void ReadIni::ReadFromIni(QString fileName)
{
    QFile file(fileName);
    file.open(QIODevice::ReadOnly);
    while(!file.atEnd())
    {
        QString line = file.readLine();
        if(!line.contains("="))
            continue;
        int eqindex = line.indexOf("=");
        QString key = line.left(eqindex - 1);
        QString value = line.mid(eqindex + 2, line.length() - eqindex -4);
        params.insert(key,value);
    }
}

当上边的操作执行操作结束以后就可以利用QMap对数值进行查询复制。比如说我们想获取配置文件中的长度数值,我们就可以进行。

float Length = track->Ra = readini->params["Length "].toFloat();

这样就可以利用键值查询将相应的字符串读出来再转换为我们想要的格式。

参考

ini文件_百度百科

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值