Lecture de fichier et placement dans une variable
Bonjour à tous ,
j'ai un petit problème j'ai un fichier .txt comme ceci
et je veux récupérer mes valeurs 2 et 4 pour cela j'ai crée une fonction , qui marchait très bien , mais après plusieurs modifications de mes valeurs cette fonction plante mon programme je pense que j'ai un problème de mémoire mais je ne suis pas sûre
Voila mon code
Code:
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 38 39 40 41 42
| int MainWindow::fichierConf(){
QFile fichier("C:/Users/Downloads/fichierConfigurationBoutons.txt");
int resultat = 0;
int colonne , ligne;
if (!fichier.open(QIODevice::ReadOnly)) {
//Si l'ouverture échoue
QMessageBox::information(this, "Fichier de configuration", "Le fichier de configuration ne s'est pas ouvert ");
resultat = 0;
}
else {
//Si l'ouverture fonctionne on continue:
QTextStream flux(&fichier);
flux.seek(0);
QString Line = flux.readLine();
while(!Line.isNull()){
if(Line.contains("ligne",Qt::CaseSensitive)){
QStringList liste = Line.split("=");
liste.removeFirst();
QString ligneValeur = liste.join(QString("="));
QString ligneString = ligneValeur;
ligne = ligneString.toInt();
Line = flux.readLine();
}
if(Line.contains("colonne",Qt::CaseSensitive)){
QStringList liste2 = Line.split("=");
liste2.removeFirst();
QString ligneValeur2 = liste2.join(QString("="));
colonne = ligneValeur2.toInt();
}
int nombre = ligne * colonne;
resultat = nombre;
}
}
return resultat;
} |
Mon programme a l'air de planter à la ligne :
Code:
if(Line.contains("ligne",Qt::CaseSensitive))
je ne comprend absolument pas pourquoi ..
merci de bien vouloir m'aider :)
Bonne journée :)