如果值包含逗号字符,如何使用QSetting读取值

Vin*_*nod 1 ini qt qsettings

在我的QT项目中,我正在使用QSettings从.ini文件中读取值.如果值包含逗号字符,则QSettings无法读取它.我该如何阅读这些价值观?

Pav*_*hov 5

逗号字符被视为列表分隔符QSettings.带逗号的INI值被解析为字符串列表.您可以将字符串列表转换回原始字符串,如下所示:

QVariant value = settings.value("key");
QString string;
if (value.type() == QVariant::StringList) {
  string = value.toStringList().join(",");    
} else {
  string = value.toString();
}
Run Code Online (Sandbox Code Playgroud)