您可以为此使用QSettings。详情请参考文档:
http://qt-project.org/doc/qt-5.1/qtcore/qsettings.html
您始终可以使用其他格式,如 XML、Json 等,但一般来说,QSettings 是一种方式,或者如果您正在编写 KDE 应用程序,那么可能KConfig。
这两个是你在处理QSettings进行读写时需要注意的两个重要方法:
QVariant QSettings::value(const QString & key,
const QVariant & defaultValue = QVariant()) const
void QSettings::setValue(const QString & key, const QVariant & value)
然后,您可以简单地坚持本机格式(如果您愿意,甚至可以在您的 Linux 上使用 ini):
QSettings::NativeFormat 0 存储使用最多的设置
适合平台的存储格式。在 Windows 上,这意味着
系统注册表;在 Mac OS X 上,这意味着 CFPreferences API;在
Unix,这意味着INI格式的文本配置文件。
为方便起见,您可以在这里找到一个示例:
#include <QSettings>
int main()
{
....
QSettings settings("Foo", "Bar");
// settings.beginGroup("application");
QString string = settings.value("foo", "bar");
// settings.endGroup();
....
}
请注意,这些组是可选的,这取决于您的确切目的。您可以通过这种方式对设置进行分组,以将某些设置封装起来。
根据文档,这对您来说也很重要:
在 Unix 系统上,如果文件格式为 NativeFormat,则默认使用以下文件:
$HOME/.config/MySoft/Star Runner.conf(用于嵌入式 Linux 的 Qt:$HOME/Settings/MySoft/Star Runner.conf)
$HOME/.config/MySoft.conf(用于嵌入式 Linux 的 Qt:$HOME/Settings/MySoft.conf)
/etc/xdg/MySoft/Star Runner.conf
/etc/xdg/MySoft.conf