Bonsoir tout le monde!
Voici mon problème, j'ai créé une fonction permettant de lire un fichier ini à l'aide de QSettings seul hic, lorsque je récupère toutes les valeurs des clés en faisant:
keyList contient effectivement toutes les clés sauf qu'elles sont classées par ordre alphabétique, ce qui ne m'arrange pas...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 QSettings settings(configFileName,QSettings::IniFormat); keyList = settings.allKeys();
Je m'explique, j'ai (par exemple) une structure permettant de configurer le port com décrite de la manière suivante:
Bref, lorsque je récupère les données sauvegardées depuis mon fichier ini, il en ressort :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 typedef struct{ T_UINT32 PortCom; T_UINT32 BaudRate; T_UINT32 DataBits; T_UINT32 Parity; T_UINT32 StopBits; T_UINT32 FlowControl; T_UINT32 TimeOut; }PortComConfig; //T_UINT32 : typedef unsigned int
On voit bien que c'est pas dans le même ordre que lorsque je les ai sauvegardé (dans le même ordre que la structure)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 "COMMUNICATION/CONFIG_RS232/BAUDRATE" "COMMUNICATION/CONFIG_RS232/COMPORT" "COMMUNICATION/CONFIG_RS232/DATABITS" "COMMUNICATION/CONFIG_RS232/FLOWCONTROL" "COMMUNICATION/CONFIG_RS232/PARITY" "COMMUNICATION/CONFIG_RS232/STOPBITS" "COMMUNICATION/CONFIG_RS232/TIMEOUT" // COMMUNICATION : 1er Groupe // CONFIG_RS232 : 2ème Groupe instanciant la structure...
Etant donné que j'utilise un pointeur sur la structure PortComConfig, j'aurai voulu récupérer les données dans l'ordre comme ça j'incrémente la valeur du pointeur pour rentrer les données de manière "simple"...
MA QUESTION EST DONC:
Est-il possible de récupérer les clés du fichier ini dans l'ordre dans lequel les clés sont sauvegardées ou pas?
Si ce n'est pas possible, comment faire? J'ai commencé à essayer d'ouvrir le fichier ini avec QDataStream (en utilisant QFile et tout ce qui suit...) mais j'ai l'impression de m'y perdre plus qu'autre chose et puis ça ne m'arrange pas d'utiliser une méthode différente de la sauvegarde...
J'ai bien évidemment cherché sur Google et sur Developpez.net mais sans réponse satisfaisante ... (apparemment QSettings::allKeys() utilise une méthode de QList et classe par ordre alphabétique les valeurs récupérées...)
Bref, je suis ouvert à toutes réponses et même de nouvelles méthodes pour récupérer tout ça (quitte à changer la méthode d'accès à ma structure...)
Je vous remercie d'avance
PS: Win7 & Qt 4.7.4
Partager