Verifier l'extention d'un fichier

Résolu
dacor Messages postés 40 Date d'inscription mercredi 10 mai 2006 Statut Membre Dernière intervention 5 juin 2008 - 21 juin 2006 à 09:58
vecchio56 Messages postés 6535 Date d'inscription lundi 16 décembre 2002 Statut Membre Dernière intervention 22 août 2010 - 22 juin 2006 à 09:36
Bonjour,
j'ai écris une fonction en c++ qui traites un certain type de fichiers.
je voudrais donc vérifier l'extention du fichier (type) avant de le traiter. comment faire pour accéder à cette information des fichiers...??
Merci de votre aide

7 réponses

cs_magma Messages postés 198 Date d'inscription vendredi 4 avril 2003 Statut Membre Dernière intervention 18 mars 2011
21 juin 2006 à 13:00
Tu peux obtenir l'extention comme ceci:


printf("%s", strchr("c:\\rep\\fic.ext", '.'));

ou

printf("%s", strchr("c:\\rep\\fic.ext", '.') + 1);
3
cs_Joky Messages postés 1787 Date d'inscription lundi 22 novembre 2004 Statut Membre Dernière intervention 31 janvier 2009 2
21 juin 2006 à 14:08
void GetFileExtension(char *szFullPath, char *szExt)
{
       char *c = szFullPath + strlen(szFullPath);
      char *d = szExt;
     
      while(*c != '.')c--;
      c++;
     
      while(*c) *d++ = *c++;
      *d = 0;
}

int main()
{
      char Buff[6];
      
      GetFileExtension("Salut.jpeg", Buff);
      printf("%s\n", Buff);       //Affiche : jpeg
      
    system("pause");
    return 0;
}

ULARGE_INTEGERJokyQi=QI("Joky"
3
dacor Messages postés 40 Date d'inscription mercredi 10 mai 2006 Statut Membre Dernière intervention 5 juin 2008
21 juin 2006 à 14:59
Merci
0
vecchio56 Messages postés 6535 Date d'inscription lundi 16 décembre 2002 Statut Membre Dernière intervention 22 août 2010 14
21 juin 2006 à 22:58
while(*c != '.')c--;
      c++;
Espérons que le nom du fichier contient au moins un '.' sinon on est mal barré

C'est mieux d'utiliser strrchr (et non strchr), et en testant le retour

_____________________________________
Un éditeur de ressources gratuit pour Windows
0

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

Posez votre question
Hylvenir Messages postés 364 Date d'inscription mercredi 11 février 2004 Statut Membre Dernière intervention 5 octobre 2006 2
22 juin 2006 à 00:52
Hum, et avec un '.' quand même ça donne quoi :
GetFileExtension( "c:/rep.dat/file", ... ) ?


Comme quoi basename et dirname ne sont peut être pas aussi simple à coder que ça finalement.
0
cs_Joky Messages postés 1787 Date d'inscription lundi 22 novembre 2004 Statut Membre Dernière intervention 31 janvier 2009 2
22 juin 2006 à 07:59
Vous pouvez pas avoir des fichiers comme tout le monde !!!! lol

ULARGE_INTEGERJokyQi=QI("Joky"
0
vecchio56 Messages postés 6535 Date d'inscription lundi 16 décembre 2002 Statut Membre Dernière intervention 22 août 2010 14
22 juin 2006 à 09:36
Ah oui j'avais pas pensé a ca....

_____________________________________
Un éditeur de ressources gratuit pour Windows
0
Rejoignez-nous