在Qt中解析ini文件

在Qt中解析ini文件,qt,parsing,label,ini,Qt,Parsing,Label,Ini,我正在使用一个定制的INI解析器,其参数是表单名、父窗口小部件。语法如下所示: int width = w->findchild("form_name","section_to_be_accessed_name").toInt(); 我可能在语法上有点错误,因为我现在没有代码。我想添加一些INI文件第2页中提到的标签。ini文件本身中提到了这些图像的属性。甚至是绝对路径等等 我尝试了多种组合,但都不起作用。谁能给我一个相同的语法吗?这里的返回值应该是多少?一个标签,我已经在Qt设计器中创

我正在使用一个定制的INI解析器,其参数是表单名、父窗口小部件。语法如下所示:

int width = w->findchild("form_name","section_to_be_accessed_name").toInt();
我可能在语法上有点错误,因为我现在没有代码。我想添加一些INI文件第2页中提到的标签。ini文件本身中提到了这些图像的属性。甚至是绝对路径等等

我尝试了多种组合,但都不起作用。谁能给我一个相同的语法吗?这里的返回值应该是多少?一个标签,我已经在Qt设计器中创建了标签。让我们说label1。但是有很多标签。请让我知道

QSettings是一个很好的类,可以很好地处理INI文件。我会去看看。它经过了很好的优化,非常健壮。它还以非常智能的方式使用QVariant。它还可以很好地处理组

稍后,当您要访问或设置设置时

QSettings s;  // in windows this would be
// C:/Users/<username>/AppData/Roaming/MySoft/Star Runner.ini
下面是一个使用设置变量的示例:

// set the setting
s.setValue("group_name/setting_name", new_value); 

// retrieve the setting
// Note: Change "toType" to whatever type that this setting is supposed to be
current_value = s.value("group_name/setting_name", default_value).toType(); 
如果您想处理嵌套元素、gui布局和设计,我将研究XML或JSON。这两者都由Qt支持

XML是Qt Creator存储Qt Designer创建的UI文件的本机方式


希望对您有所帮助。

如果您能提供准确的代码以及您尝试过的一些组合,这将非常有帮助。由于存在2 s变量,此代码将无法编译,可能会让人感到困惑。你应该把它分成几个代码块。我不确定我是否喜欢它现在的样子,但我的大多数回答的重点是让用户找到文档的正确部分。耸耸肩,你好,菲亚特。谢谢你提供的信息,但我不能使用QSettings,我应该使用内置解析器。我记得的语法是:int width=parser\u object\u name->findchildname,如上所述;请让我知道如何做多个图像标签。非常感谢。我认为需要更多使用解析器的示例代码+ini文件的样子来帮助您回答问题。很难假设解析器将如何工作或处理变量等。例如:什么不工作?什么在起作用?你的ini文件中有什么?等等。我明天会发布更多细节。非常感谢你,菲亚特。
QSettings s("path/to/my/inifile.ini", QSettings::IniFormat);
// set the setting
s.setValue("group_name/setting_name", new_value); 

// retrieve the setting
// Note: Change "toType" to whatever type that this setting is supposed to be
current_value = s.value("group_name/setting_name", default_value).toType();