Présentation
Documentation
L'équipe
Sérialisation
 
Programmes
Objets
Libs Utilitaires
Libs Internes
   
 
Editeur
Syntaxes
Windows
Versions
   

SCR/AL1 - TOME IV. Les librairies internes

2. La librairie scr4o

2.18 Fonctions de gestion de directory

2.18.12 SCR_dir (file s_dirtbl.c:201)

Syntax

SCRSTAT **SCR_dir(
char *path,
int add_dir,
char *dir,
char *filename
)
#else
SCRSTAT **SCR_dir(path, add_dir, dir, filename)
char *path;
int add_dir;
char *dir, *filename;
#endif

Description

Retourne une table de pointeurs vers des structures SCRSTAT correspondant aux spécifications données dans path (par ex. *c*). Les noms sont classés par ordre alphabétique, mais les directories sont tous placés au début. La table est terminée par un pointeur nul.

Le paramètre add_dir indique la sélection à effectuer sur les directory :

Les variables dir et filename contiennent en output le nom absolu du directory scanné et le masque de recherche. Elles doivent avoir une taille suffisante.

La table est alloué à l'aide de SCR_add_ptr(). L'espace occupé est libéré par SCR_free_tbl().

Exemple

    SCRSTAT     **ss;
int i;
char dir[SCR_STAT_NAME_LG + 1];
char file[SCR_STAT_NAME_LG + 1];

ss = SCR_dir("c*c", 0, dir, file);
if(ss == 0) return;
printf("Directory of %s\n", dir);
for(i = 0 ; ss[i] ; i++)
printf("Name : %s - size : %ld\n", ss[i]->ss_name, ss[i]->ss_size);
SCR_free_tbl(ss);

Valeur retournée

une table de SCRSTAT * contenant les fichiers sélectionnés et terminé par un pointeur nul. Si aucun fichier n'est trouvé, retourne NULL

File s_dirtbl.c

SCRSTAT **SCR_dir(char *path, int add_dir, char *dir, char *filename)
SCRSTAT **SCR_dir_ex(char *path, int add_dir, char *dir, char *filename, int crc)
SCRSTAT **SCR_dir_ex_fn(char *path, int add_dir, char *dir, char *filename, int crc, int *fn())
SCR_dircmp(pd1, pd2)

SCR_dir_ex (file s_dirtbl.c:143)

Syntax

SCRSTAT **SCR_dir_ex(
char *path,
int add_dir,
char *dir,
char *filename,
int crc
)
#else
SCRSTAT **SCR_dir_ex(path, add_dir, dir, filename, crc)
char *path;
int add_dir;
char *dir, *filename;
int crc;
#endif

SCR_dir_ex_fn (file s_dirtbl.c:62)

Syntax

SCRSTAT **SCR_dir_ex_fn(
char *path,
int add_dir,
char *dir,
char *filename,
int crc,
int *fn()
)
#else
SCRSTAT **SCR_dir_ex_fn(path, add_dir, dir, filename, crc, fn)
char *path;
int add_dir;
char *dir, *filename;
int crc;
int (*fn)();
#endif

Description

Retourne une table de pointeurs vers des structures SCRSTAT correspondant aux spécifications données dans path (par ex. *c*). Les noms sont classés par ordre alphabétique, mais les directories sont tous placés au début. La table est terminée par un pointeur nul.

Le paramètre add_dir indique la sélection à effectuer sur les directory :

Les variables dir et filename contiennent en output le nom absolu du directory scanné et le masque de recherche. Elles doivent avoir une taille suffisante.

La valeur de crc détermine le fait de calculer ou non le crc32 de chaque fichier (voir SCR_stat_ex()).

La table est alloué à l'aide de SCR_add_ptr(). L'espace occupé est libéré par SCR_free_tbl().

Exemple

    SCRSTAT     **ss;
int i;
char dir[SCR_FILE_LG + 1];
char file[SCR_FILE_LG + 1];

ss = SCR_dir_ex("c*c", 0, dir, file, 1);
if(ss == 0) return;
printf("Directory of %s\n", dir);
for(i = 0 ; ss[i] ; i++)
printf("Name : %s - crc32 : %u\n", ss[i]->ss_name, ss[i]->ssx_crc32);
SCR_free_tbl(ss);

Valeur retournée

une table de SCRSTAT * contenant les fichiers sélectionnés et terminé par un pointeur nul. Si aucun fichier n'est trouvé, retourne NULL

Voir également

SCR_dir()

SCR_dircmp (file s_dirtbl.c:8)

Syntax

SCR_dircmp(pd1, pd2)
char *pd1, *pd2;

Description

Copyright © 1998-2015 Jean-Marc Paul and Bernard PAUL - Envoyez vos remarques ou commentaires à bernard@xon.be