Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. General and Desktop
  4. QSettings not returning keys of the predefined .ini file
Forum Update on Monday, May 27th 2025

QSettings not returning keys of the predefined .ini file

Scheduled Pinned Locked Moved Solved General and Desktop
20 Posts 4 Posters 2.4k Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • aha_1980A Offline
    aha_1980A Offline
    aha_1980
    Lifetime Qt Champion
    wrote on last edited by
    #10

    @thippu

    And in addition to what @raven-worx says, you need to use this constructor if you want to specify the filename.

    Otherwise QSettings calculates the filename itself.

    Qt has to stay free or it will die.

    1 Reply Last reply
    3
    • raven-worxR raven-worx

      @thippu
      with respect to your ini file from your first post you should call:

      iniSettings->beginGroup("Personal");
      iniSettings->value("Age");
      iniSettings->endGroup();
      

      or alternatively (if you don't have a group set!):

      iniSettings->value("Personal/Age");
      
      T Offline
      T Offline
      thippu
      wrote on last edited by
      #11

      @raven-worx Yes bro, in that .ini example, [groupname] // may grow and I want to scan them dynamically, how to do it?

      1 Reply Last reply
      0
      • T thippu

        @raven-worx for beginGroup() , iniSetting->beginGroup("[");// I doubt it will work as per .ini filestructure?

        raven-worxR Offline
        raven-worxR Offline
        raven-worx
        Moderators
        wrote on last edited by
        #12

        @thippu
        yes i just wanted to add as @aha_1980 said.
        Use the mentioned constructor, since in your case it is not required to mess with the scopes.

        --- SUPPORT REQUESTS VIA CHAT WILL BE IGNORED ---
        If you have a question please use the forum so others can benefit from the solution in the future

        T 1 Reply Last reply
        1
        • raven-worxR raven-worx

          @thippu
          yes i just wanted to add as @aha_1980 said.
          Use the mentioned constructor, since in your case it is not required to mess with the scopes.

          T Offline
          T Offline
          thippu
          wrote on last edited by
          #13

          @raven-worx okay, I have included in the constructor itself.
          code: iniSettings=new QSettings(filename,QSettings::IniFormat,this);

          raven-worxR 1 Reply Last reply
          0
          • T thippu

            @raven-worx okay, I have included in the constructor itself.
            code: iniSettings=new QSettings(filename,QSettings::IniFormat,this);

            raven-worxR Offline
            raven-worxR Offline
            raven-worx
            Moderators
            wrote on last edited by
            #14

            @thippu
            and? it's working now?

            --- SUPPORT REQUESTS VIA CHAT WILL BE IGNORED ---
            If you have a question please use the forum so others can benefit from the solution in the future

            T 2 Replies Last reply
            1
            • raven-worxR raven-worx

              @thippu
              and? it's working now?

              T Offline
              T Offline
              thippu
              wrote on last edited by
              #15

              @raven-worx bro, in .ini

              ) can grow, I want to scan them dynamically, so what to include in
              beginGroup() ?, please help me.

              raven-worxR 1 Reply Last reply
              0
              • raven-worxR raven-worx

                @thippu
                and? it's working now?

                T Offline
                T Offline
                thippu
                wrote on last edited by thippu
                #16

                @raven-worx Yes, bro working. failure was the happing because of the constructor, after setting it properly it working now, I did
                I can't thank enough to guys @raven-worx , @aha_1980

                qDebug()<<iniSettings->childGroups();//returns all the heading names````
                1 Reply Last reply
                0
                • T thippu

                  @raven-worx bro, in .ini

                  ) can grow, I want to scan them dynamically, so what to include in
                  beginGroup() ?, please help me.

                  raven-worxR Offline
                  raven-worxR Offline
                  raven-worx
                  Moderators
                  wrote on last edited by
                  #17

                  @thippu
                  with the usage of the right Constructor your ini-file should be read correctly now.
                  So now you can use QSettings::childGroups() to traverse all groups and read the values as i described above or with the use of QSettings::beginGroup() and QSettings::childKeys()

                  foreach( QString group, iniSettings->childGroups() )
                  {
                       // process group
                       iniSettings->beginGroup(group);
                           foreach( QString key, iniSettings->childKeys() )
                           {
                                  QVariant val = iniSettings->value(key);
                                  // process val
                           }
                       iniSettings->endGroup();
                  }
                  

                  --- SUPPORT REQUESTS VIA CHAT WILL BE IGNORED ---
                  If you have a question please use the forum so others can benefit from the solution in the future

                  J.HilkJ T 2 Replies Last reply
                  4
                  • raven-worxR raven-worx

                    @thippu
                    with the usage of the right Constructor your ini-file should be read correctly now.
                    So now you can use QSettings::childGroups() to traverse all groups and read the values as i described above or with the use of QSettings::beginGroup() and QSettings::childKeys()

                    foreach( QString group, iniSettings->childGroups() )
                    {
                         // process group
                         iniSettings->beginGroup(group);
                             foreach( QString key, iniSettings->childKeys() )
                             {
                                    QVariant val = iniSettings->value(key);
                                    // process val
                             }
                         iniSettings->endGroup();
                    }
                    
                    J.HilkJ Offline
                    J.HilkJ Offline
                    J.Hilk
                    Moderators
                    wrote on last edited by
                    #18

                    @raven-worx
                    uh hu, using deprecated syntax/macros, shame on you ;-)


                    Be aware of the Qt Code of Conduct, when posting : https://forum.qt.io/topic/113070/qt-code-of-conduct


                    Q: What's that?
                    A: It's blue light.
                    Q: What does it do?
                    A: It turns blue.

                    raven-worxR 1 Reply Last reply
                    1
                    • raven-worxR raven-worx

                      @thippu
                      with the usage of the right Constructor your ini-file should be read correctly now.
                      So now you can use QSettings::childGroups() to traverse all groups and read the values as i described above or with the use of QSettings::beginGroup() and QSettings::childKeys()

                      foreach( QString group, iniSettings->childGroups() )
                      {
                           // process group
                           iniSettings->beginGroup(group);
                               foreach( QString key, iniSettings->childKeys() )
                               {
                                      QVariant val = iniSettings->value(key);
                                      // process val
                               }
                           iniSettings->endGroup();
                      }
                      
                      T Offline
                      T Offline
                      thippu
                      wrote on last edited by
                      #19

                      @raven-worx Sure bro, I will use this code to create group and contents of the group.

                      1 Reply Last reply
                      0
                      • J.HilkJ J.Hilk

                        @raven-worx
                        uh hu, using deprecated syntax/macros, shame on you ;-)

                        raven-worxR Offline
                        raven-worxR Offline
                        raven-worx
                        Moderators
                        wrote on last edited by
                        #20

                        @J.Hilk said in QSettings not returning keys of the predefined .ini file:

                        uh hu, using deprecated syntax/macros, shame on you ;-)

                        yes, i am still too lazy for such a convenient function to deprecate it also in my head ;)

                        --- SUPPORT REQUESTS VIA CHAT WILL BE IGNORED ---
                        If you have a question please use the forum so others can benefit from the solution in the future

                        1 Reply Last reply
                        0

                        • Login

                        • Login or register to search.
                        • First post
                          Last post
                        0
                        • Categories
                        • Recent
                        • Tags
                        • Popular
                        • Users
                        • Groups
                        • Search
                        • Get Qt Extensions
                        • Unsolved