Tester si un fichier existe

desquesa Messages postés 22 Date d'inscription mercredi 10 mars 2004 Statut Membre Dernière intervention 9 juillet 2004 - 14 avril 2004 à 16:05
desquesa Messages postés 22 Date d'inscription mercredi 10 mars 2004 Statut Membre Dernière intervention 9 juillet 2004 - 15 avril 2004 à 12:33
Bonjour tout le monde,
je voudrais juste savoir comment tester en Visual c++6, si un fichier existe ou non, car en fait je cherche a copier un fichier ds un autre, mais biensur des que celui-ci n'existe pas ca plante
Si kelkun peut m'aider c cool !!!
merci d'avance
PS: j'utilise des ifstream, et non des FILE,

Des chercheurs qui cherchent on en trouve
Des chercheurs qui trouvent on en cherche

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
14 avril 2004 à 16:15
GetFileAttributes() ou FindFirstFile().

ciao...
BruNews, Admin CS, MVP Visual C++
0
hilairenicolas Messages postés 398 Date d'inscription jeudi 30 octobre 2003 Statut Membre Dernière intervention 15 juin 2007 2
14 avril 2004 à 16:20
tu as aussi _access (portable), mais si t'es sous visual c++, API Windows c'est bien aussi :)
héhé
0
desquesa Messages postés 22 Date d'inscription mercredi 10 mars 2004 Statut Membre Dernière intervention 9 juillet 2004
15 avril 2004 à 12:05
Merci BruNews tu me sauves encore une fois,
j'ai utilisé GetFileAttributes, et ca marche, maintenant je veux savoir la taille de ce fichier j'ai essayé avec GetFileSize mais ca rend tjs la meme chose FFFFFFFF ou 4294967295 en decimal
Peux tu m'aider stp
Merci d'avance

Des chercheurs qui cherchent on en trouve
Des chercheurs qui trouvent on en cherche
0
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
15 avril 2004 à 12:24
Il est ouvert ton fichier ?
Passe le handle a GetFileSize() et DOIT aller.
Si tu as besoin de la taille sur plusieurs fichiers avant de les ouvrir, fais toi une func perso avec FindFirstFile() et tu auras la taille fichier dans la structure WIN32_FIND_DATA.

Finalement ira + vite de te la faire:

DWORD FileExistsSize(const char* pszfl)
{
WIN32_FIND_DATA wfd;
HANDLE hfl = FindFirstFile(pszfl, &wfd);
if(hfl == INVALID_HANDLE_VALUE) return 0xFFFFFFFF;
FindClose(hfl);
return wfd.nFileSizeLow;
}

Normalement devrait retourner taille sur 64 bits, legere modif si besoin.

ciao...
BruNews, Admin CS, MVP Visual C++
0

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

Posez votre question
desquesa Messages postés 22 Date d'inscription mercredi 10 mars 2004 Statut Membre Dernière intervention 9 juillet 2004
15 avril 2004 à 12:33
Merci c cool ta fonction marche super
++

Des chercheurs qui cherchent on en trouve
Des chercheurs qui trouvent on en cherche
0
Rejoignez-nous