2009-03-05 11 views
16

Existe-t-il un équivalent Linux de la fonction Win32 API _splitpath?
Détails:_splitpath sous Linux

void _splitpath (
    const char *path, // Path Input 
    char *drive,  // Drive  : Output 
    char *dir,   // Directory : Output 
    char *fname,  // Filename : Output 
    char *ext   // Extension : Output 
); 

Il prend le chemin complet en entrée et donne lecteur, le répertoire, nom de fichier et l'extension en sortie.

+0

Cela aiderait les gens d'unix à lire ceci si vous avez dit (exactement) ce que fait SplitPath. Ou lien vers une documentation ... – dmckee

Répondre

4

Pas que je sache, non. Ce que je ferais est:

  • Exécutez le chemin à travers realpath(), pour le rendre canonique
  • juste de se séparer sur le séparateur de répertoire, à savoir le / caractère
0

Utiliser dirname() et basename().