[Gtk] reperer unn fichier ou un dossier dans un repertoire
reperer unn fichier ou un dossier dans un repertoire [Gtk] - C - Programmation
MarshPosté le 20-05-2004 à 15:13:10
Voilà, j'ai un petit problème avec la fonction g_file_test. En fait, je programme sous windows et j'utilise cette fonction pour savoir si le nom que me retourne la fonction g_dir_read_name est celui d'un fichier ou d'un dossier. Le problème, c'ets que lorsque que j'ai un dossier, cela ne semble pas fonctionner
j'ai fait çà :
Code :
#include <gtk/gtk.h>
#include <stdio.h>
/* prototypes des fonctions et actions */
bool reccur(char *Path);
/* fonction principale */
int main()
{
/* variables */
bool success;
success = reccur("C:\\Test_pather" );
/* on vérifie qu'il n'y a pas eu d'erreur */
if (!success)
{
puts("Erreur" );
}
return 0;
}
/* listage d'un repertoire */
bool reccur(char *Path)
{
/* variables */
GDir* Dossier = g_dir_open(Path,0,NULL);
constchar* Fich_Cour;
/* on vérifie que le dossier soit ouvert */
if (Dossier != NULL)
{
/* on choppe le premier fichier */
Fich_Cour = g_dir_read_name(Dossier);
/* boucle de traitement des fichiers */
while (Fich_Cour != NULL)
{
if (g_file_test(Fich_Cour,G_FILE_TEST_IS_DIR ))
{
printf("Dossier : %s\n",Fich_Cour);
}
else
{
puts(Fich_Cour); /* on affiche le nom */
}
Fich_Cour = g_dir_read_name(Dossier); /* on récupère le nom suivant */
}
/* on referme le dossier */
g_dir_close(Dossier);
/* tout s'est bien passé en théorie */
returntrue;
}
else
{
/* dossier non ouvert */
returnfalse;
}
}
je voudrais savoir si l'erreur vient de moi ou si elle viens de gtk. Sinon, comment je pourrais faire pour savoir si c'ets le nom d'un fichier ou d'un dossier ? @++
Marsh Posté le 20-05-2004 à 15:13:10
Voilà, j'ai un petit problème avec la fonction g_file_test.
En fait, je programme sous windows et j'utilise cette fonction pour savoir si le nom que me retourne la fonction g_dir_read_name est celui d'un fichier ou d'un dossier.
Le problème, c'ets que lorsque que j'ai un dossier, cela ne semble pas fonctionner
j'ai fait çà :
je voudrais savoir si l'erreur vient de moi ou si elle viens de gtk.
Sinon, comment je pourrais faire pour savoir si c'ets le nom d'un fichier ou d'un dossier ?
@++