Modifier une ligne de fichier
Bonjour, je suis sur QT 3 pour realiser un ptt projet de gestion de meuble:
je suis bloquer sur le probléme qui est le suivant si je trouve que le produit existe au moment de la saisie dans le fichier(support d'enregistrement) une boite de dialogue m'indique ca et elle me demande si oui ou non ecrasé de changer l'ancien enregistrement . si c non c bon mais , si je veux ecrire avec les mêmes donnée juste modifier la quantité dans le fichier.
voici 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 43 44 45 46 47 48 49 50 51 52 53 54 55
|
int dlgSaisi::ref_ex()
{
Meuble m;
int res=0;//non
QFile f( "meubles.txt" );
//Ouverture du fichier
if( !f.open( IO_ReadWrite))
{
//Erreur d'ouverture du fichier
std::cout << "Failed to open file." << std::endl;
}
QTextStream ts( &f);
while(!ts.eof( ))
{
ts >> m.ref ;
ts >> m.intitule;
ts >> m.type ;
ts >> m.couleur;
ts >> m.qte;
//Tester les critères de recherche
if((m.ref==ref->text()))
{
// Attente de la reponse de l'utilisateur
if(QMessageBox::question(
this,
tr("Ecraser un enregistrement"),
tr("La reference %1 existe deja."
"voulez vous reecrire dessus?")
.arg( m.ref ),
tr("&Yes"), tr("&No"),
QString::null, 0, 1 )==1)
{
ts << m.ref;
ts << m.intitule;
ts << m.type;
ts << m.couleur;
ts << quantite->text();
res=1;
}
else res=0;
} |
le fichier ne prend aucune modification si je clique sur "Yes"/
merci d'avance