Bonjour


Voila ma problematique du jour .
J'ai creer précédemment dans mon programme 6 QList<double> de meme taille qui contienne chacunes des variable double (800 variables par liste)

L'objectif est de mettre toutes les listes dans un seul fichier csv suivant ce schema:

Valeur1QList1; Valeur1Qlist2 ; Valeur1QList3 ; Valeur1QList4 ; Valeur1QList5; Valeur1QList6
Valeur2QList1; Valeur2Qlist2 ; Valeur2QList3 ; Valeur2QList4 ; Valeur2QList5; Valeur2QList6
Valeur3QList1; Valeur3Qlist2 ; Valeur3QList3 ; Valeur3QList4 ; Valeur3QList5; Valeur3QList6
Valeur4QList1; Valeur4Qlist2 ; Valeur4QList3 ; Valeur4QList4 ; Valeur4QList5; Valeur4QList6
etc...

j'ai écrit ça :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
 QFile *fichierCSV = new QFile("D:/Mes Documents/Arduino/PROJETS YANN/BANC AAC/LOGICIEL/BANC_ARBRE_A_CAMES_V1_0_2/EXTRACTION.csv");
 
        // Ouverture du fichier en mode texte et en écriture seule
        if (fichierCSV->open(QFile::WriteOnly | QIODevice::Text))
        {
            // Ecriture de l'en-tête
            QTextStream entete(fichierCSV);
 
            entete << QString::fromUtf8("pas;Vcapteur1;Vcapteur2;Vcapteur1Corrige;Vcapteur2Corrige;angle") << endl;
 
            // Ecriture des données
            QTextStream datas(fichierCSV);
 
            datas << "\"" << listecodeur << "\"";
            datas << ";";
            datas << "\"" << listeVcapteur1 << "\"";
            datas << ";";
            datas << "\"" << listeVcapteur2<< "\"";
            datas << ";";
            datas << "\"" << listeVcapteur1Corrige<< "\"";
            datas << ";";
            datas << "\"" << listeVcapteur2Corrige<< "\"";
            datas << ";";
            datas << "\"" << listeangle<< "\"";
            datas << ";";
            datas << endl;
 
            // On ferme le fichier
            fichierCSV->close();
 
            delete fichierCSV;
        }
        else
        {
            QMessageBox::critical(0,"Erreur !",("Impossible d'ouvrir le fichier datas.csv"));
            delete fichierCSV;
        }
biensur cela ne fonctionne pas... du moin la création du fichier fonctionne mais pas le remplissage (ce à quoi je m'attendais)
jai tester d'utuliser la fonction Refactor qui ma rajouter un & devant le nom de la liste. l'operande bit a bit ma permis de lancer le programme mais forcement cela n'est pas bon .
j'obtient ceci dans mon fichier csv :

*******************************************************************
pas;Vcapteur1;Vcapteur2;Vcapteur1Corrige;Vcapteur2Corrige;angle
"0x13cb918";"0x13cb910";"0x13cb908";"0x14902b0";"0x14902b8";"0x14902c0";

********************************************************************
Du coup je suppose :

1/ que je dois convertir mes QList<double> en QStringList (pour passer des variables numériques en caractères)
> soit ligne par ligne en utilisant QString::number ()
>soit toute les valeurs de la liste d'un coup avec ???

2 / que je fasse une boucle pour inclure toutes les lignes des listes et pas seulement la 1ère?

ou bien une méthode autre pour faire tout ça ??


Merci a vous