Vérifier l'existence d'un fichier (sous windows(32/64) exclusivement !!! c'est pas portable sous d'autres os !!!)

Contenu du snippet

      • Spécifique à Windows(32/64 bits) ***


Petit bout de code pour vérifier l'existance d'un fichier, rien de bien compliqué ...

Source / Exemple :


#define WIN32_LEAN_AND_MEAN
#include <windows.h>
#include <stdio.h>

//
// pour une version unicode
// changez simplement « char » par « wchar_t »
// et « GetFileAttributesA() » par « GetFileAttributesW() »
//
// vous pouvez aussi le faire à la Windows, deux fonctions
// int fileExistsA(const char* ...)
// int fileExistsW(const wchar_t* ...)
// et puis définir une macro fileExists sur fileExistsA ou fileExistsW
// en testant la macro UNICODE(si elle est définie alors W sinon A)
//
// ou encore y aller avec les TCHAR
// vous avez le choix ...
//
int fileExists(const char* fileName)
{
    return (0 <= (INT_PTR)GetFileAttributesA(fileName));
}

int main()
{

  printf("`c:\\autoexec.bat` existe?: %s\n", fileExists("c:\\autoexec.bat") ? "oui" : "non");
  return 0;

}

Conclusion :


En cas de problèmes ou autres, laissez moi un message!
Si vous voulez me niaiser en me disant que c'est pas portable alors passer votre chemin maintenant !

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.