Pb visual c++ fichiers

cs_pichu Messages postés 28 Date d'inscription dimanche 9 mars 2003 Statut Membre Dernière intervention 8 juin 2005 - 9 mars 2003 à 16:18
cs_pichu Messages postés 28 Date d'inscription dimanche 9 mars 2003 Statut Membre Dernière intervention 8 juin 2005 - 9 mars 2003 à 20:45
dans une fonction de visual j'ouvre un fichier fstream en lecture. Ce fichier contient des informations. Mais ca me renvoie true quand j'affiche le résultat de eof() alors que je veux etre au début du fichier.
Pourquoi et comment je peux faire?

5 réponses

BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
9 mars 2003 à 17:20
Tu prog pour Win32 ?
si oui tu vires les flux, OBSOLETE.
HANDLE hfl = CreateFile(...);
traitements divers...
SetFilePointer(hfl, 0, 0, FILE_BEGIN);
TU ES AU DEBUT.
BruNews, ciao...
0
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
9 mars 2003 à 17:20
BruNews, ciao...
0
cs_pichu Messages postés 28 Date d'inscription dimanche 9 mars 2003 Statut Membre Dernière intervention 8 juin 2005
9 mars 2003 à 17:57
Je suis bien sous Window 2000
voici mes lignes ou j'ai un pb:

fstream L;
char c;
L.open("liste.txt",ios::in,filebuf::sh_read);
L.read(&c,sizeof(char));
if (!L.eof())
AfxMessageBox("pas fin");
else
AfxMessageBox("finnnnn");
L.close();

et a chaque fois j'ai "finnnnnn" qui s'affiche (le fichier n'est pas vide)
alors que dans d'autres fonctions, ca marche et me met bien au début
j'ai pas compris comment utiliser le HANDLE..
merci si t'as un exemple
0
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
9 mars 2003 à 18:15
Le prob est de savoir SI tu prog POUR Win32 ou NON ?
Si oui, nenni fstream et autre truc du genre.
Utiliser API Windows, vitesse au rdv.
Il te faut le MSDN a consulter.

#include <windows.h>

HANDLE hfl;
DWORD dwread;
BYTE data[100]; // buffer 100 octets
hfl = CreateFile("liste.txt",........, OPEN_EXISTING,..);
EOF n'existe pas en Win32, ni nulle part d'ailleurs.
EOF si tu lis et que reponse 0 octet.
Vois ma source "CHOIX COULEURS", j'ouvre fichier, lit et enregistre.
dwread = 0; ReadFile(hfl, &data, 100, &dwread, 0);
CloseHandle(hfl); // ferme fichier
if(!dwread) c'est EOF;
BruNews, ciao...
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_pichu Messages postés 28 Date d'inscription dimanche 9 mars 2003 Statut Membre Dernière intervention 8 juin 2005
9 mars 2003 à 20:45
merci j'ai trouve
0
Rejoignez-nous