OVH Cloud OVH Cloud

Récupération de la liste des fichiers d'un ou plusieurs répertoires

8 réponses
Avatar
Vincent
Bonjour,

Existe-t'il une technique particulière pour récupérer la liste des fichiers
d'un répertoire ? ( sous-répertoires compris )

Merci

Vincent

8 réponses

Avatar
Arnaud CLERET
Ce petit morceau de code devrait pouvoir vous aider :

private void PollingDirectory(string p_path)
{
if (p_path == null || p_path.Length==0) throw new
ArgumentNullException("p_path");
try
{
FileInfo[] filesList = new DirectoryInfo(p_path).GetFiles();
foreach (FileInfo fileInfo in filesList)
{
//TODO : Implémenter le processus métier a effectuer sur le
fichier
}

DirectoryInfo[] subDirectories = new
DirectoryInfo(p_path).GetDirectories();
foreach (DirectoryInfo directoryInfo in subDirectories)
PollingDirectory(directoryInfo.FullName);
}
catch (Exception e)
{
//TODO : Implement logs
throw;
}
}

--
arno - http://www.dotnetguru2.org/acleret/

"Vincent" a écrit dans le message de news:

Bonjour,

Existe-t'il une technique particulière pour récupérer la liste des
fichiers d'un répertoire ? ( sous-répertoires compris )

Merci

Vincent



Avatar
Vincent
Merci,
il fonctionne parfaitement

Vincent

"Arnaud CLERET" a écrit dans le message
de news: eZ%
Ce petit morceau de code devrait pouvoir vous aider :

private void PollingDirectory(string p_path)
{
if (p_path == null || p_path.Length==0) throw new
ArgumentNullException("p_path");
try
{
FileInfo[] filesList = new DirectoryInfo(p_path).GetFiles();
foreach (FileInfo fileInfo in filesList)
{
//TODO : Implémenter le processus métier a effectuer sur le
fichier
}

DirectoryInfo[] subDirectories = new
DirectoryInfo(p_path).GetDirectories();
foreach (DirectoryInfo directoryInfo in subDirectories)
PollingDirectory(directoryInfo.FullName);
}
catch (Exception e)
{
//TODO : Implement logs
throw;
}
}

--
arno - http://www.dotnetguru2.org/acleret/

"Vincent" a écrit dans le message de news:

Bonjour,

Existe-t'il une technique particulière pour récupérer la liste des
fichiers d'un répertoire ? ( sous-répertoires compris )

Merci

Vincent







Avatar
David T.
Bonjour,

J'aimerais connaitre la façon dont vous traitez les accès à C:System
Volume Information , car une erreur de droit est générée lors de l’accès
à cette ressource.

Par avance merci.

David T.

Arnaud CLERET a écrit :
Ce petit morceau de code devrait pouvoir vous aider :

private void PollingDirectory(string p_path)
{
if (p_path == null || p_path.Length==0) throw new
ArgumentNullException("p_path");
try
{
FileInfo[] filesList = new DirectoryInfo(p_path).GetFiles();
foreach (FileInfo fileInfo in filesList)
{
//TODO : Implémenter le processus métier a effectuer sur le
fichier
}

DirectoryInfo[] subDirectories = new
DirectoryInfo(p_path).GetDirectories();
foreach (DirectoryInfo directoryInfo in subDirectories)
PollingDirectory(directoryInfo.FullName);
}
catch (Exception e)
{
//TODO : Implement logs
throw;
}
}



Avatar
Vincent
En fait, il faut bien utilser le try, car dès qu'il y a un problème il faut
gérer l'erreur.
Les fichiers ayant un bp sur les droits ne sont pas gérés.

"David T." a écrit dans le message de news:

Bonjour,

J'aimerais connaitre la façon dont vous traitez les accès à C:System
Volume Information , car une erreur de droit est générée lors de l’accès à
cette ressource.

Par avance merci.

David T.

Arnaud CLERET a écrit :
Ce petit morceau de code devrait pouvoir vous aider :

private void PollingDirectory(string p_path)
{
if (p_path == null || p_path.Length==0) throw new
ArgumentNullException("p_path");
try
{
FileInfo[] filesList = new DirectoryInfo(p_path).GetFiles();
foreach (FileInfo fileInfo in filesList)
{
//TODO : Implémenter le processus métier a effectuer sur le
fichier
}

DirectoryInfo[] subDirectories = new
DirectoryInfo(p_path).GetDirectories();
foreach (DirectoryInfo directoryInfo in subDirectories)
PollingDirectory(directoryInfo.FullName);
}
catch (Exception e)
{
//TODO : Implement logs
throw;
}
}





Avatar
David T.
Ok, c'est bien ce que je pensais. Mais dans ce cas il n'y a vraiment pas
moyen d'accéder à ce type de ressource ?

David T.

Vincent a écrit :
En fait, il faut bien utilser le try, car dès qu'il y a un problème il faut
gérer l'erreur.
Les fichiers ayant un bp sur les droits ne sont pas gérés.

"David T." a écrit dans le message de news:

Bonjour,

J'aimerais connaitre la façon dont vous traitez les accès à C:System
Volume Information , car une erreur de droit est générée lors de l’accès à
cette ressource.

Par avance merci.

David T.

Arnaud CLERET a écrit :
Ce petit morceau de code devrait pouvoir vous aider :

private void PollingDirectory(string p_path)
{
if (p_path == null || p_path.Length==0) throw new
ArgumentNullException("p_path");
try
{
FileInfo[] filesList = new DirectoryInfo(p_path).GetFiles();
foreach (FileInfo fileInfo in filesList)
{
//TODO : Implémenter le processus métier a effectuer sur le
fichier
}

DirectoryInfo[] subDirectories = new
DirectoryInfo(p_path).GetDirectories();
foreach (DirectoryInfo directoryInfo in subDirectories)
PollingDirectory(directoryInfo.FullName);
}
catch (Exception e)
{
//TODO : Implement logs
throw;
}
}









Avatar
Vincent
Je ne sais pas, peut être le fichier est-il déjà véroullié par un autre
programme ?
Les fichiers système font particulier.


"David T." a écrit dans le message de news:

Ok, c'est bien ce que je pensais. Mais dans ce cas il n'y a vraiment pas
moyen d'accéder à ce type de ressource ?

David T.

Vincent a écrit :
En fait, il faut bien utilser le try, car dès qu'il y a un problème il
faut gérer l'erreur.
Les fichiers ayant un bp sur les droits ne sont pas gérés.

"David T." a écrit dans le message de news:

Bonjour,

J'aimerais connaitre la façon dont vous traitez les accès à C:System
Volume Information , car une erreur de droit est générée lors de l’accès
à cette ressource.

Par avance merci.

David T.

Arnaud CLERET a écrit :
Ce petit morceau de code devrait pouvoir vous aider :

private void PollingDirectory(string p_path)
{
if (p_path == null || p_path.Length==0) throw new
ArgumentNullException("p_path");
try
{
FileInfo[] filesList = new DirectoryInfo(p_path).GetFiles();
foreach (FileInfo fileInfo in filesList)
{
//TODO : Implémenter le processus métier a effectuer sur le
fichier
}

DirectoryInfo[] subDirectories = new
DirectoryInfo(p_path).GetDirectories();
foreach (DirectoryInfo directoryInfo in subDirectories)
PollingDirectory(directoryInfo.FullName);
}
catch (Exception e)
{
//TODO : Implement logs
throw;
}
}










Avatar
David T.
Ok, merci.

David T.

Vincent a écrit :
Je ne sais pas, peut être le fichier est-il déjà véroullié par un autre
programme ?
Les fichiers système font particulier.


"David T." a écrit dans le message de news:

Ok, c'est bien ce que je pensais. Mais dans ce cas il n'y a vraiment pas
moyen d'accéder à ce type de ressource ?

David T.

Vincent a écrit :
En fait, il faut bien utilser le try, car dès qu'il y a un problème il
faut gérer l'erreur.
Les fichiers ayant un bp sur les droits ne sont pas gérés.

"David T." a écrit dans le message de news:

Bonjour,

J'aimerais connaitre la façon dont vous traitez les accès à C:System
Volume Information , car une erreur de droit est générée lors de l’accès
à cette ressource.

Par avance merci.

David T.

Arnaud CLERET a écrit :
Ce petit morceau de code devrait pouvoir vous aider :

private void PollingDirectory(string p_path)
{
if (p_path == null || p_path.Length==0) throw new
ArgumentNullException("p_path");
try
{
FileInfo[] filesList = new DirectoryInfo(p_path).GetFiles();
foreach (FileInfo fileInfo in filesList)
{
//TODO : Implémenter le processus métier a effectuer sur le
fichier
}

DirectoryInfo[] subDirectories = new
DirectoryInfo(p_path).GetDirectories();
foreach (DirectoryInfo directoryInfo in subDirectories)
PollingDirectory(directoryInfo.FullName);
}
catch (Exception e)
{
//TODO : Implement logs
throw;
}
}












Avatar
Paul Bacelar
L'explorateur Windows n'est pas seulement un explorateur de fichier mais
permet de visualiser d'autres choses que des fichiers.

"C:System Volume Information" fait parti de ces autres choses.
--
Paul Bacelar
MVP VC++


"David T." wrote in message
news:
Ok, merci.

David T.

Vincent a écrit :
Je ne sais pas, peut être le fichier est-il déjà véroullié par un autre
programme ?
Les fichiers système font particulier.


"David T." a écrit dans le message de news:

Ok, c'est bien ce que je pensais. Mais dans ce cas il n'y a vraiment pas
moyen d'accéder à ce type de ressource ?

David T.

Vincent a écrit :
En fait, il faut bien utilser le try, car dès qu'il y a un problème il
faut gérer l'erreur.
Les fichiers ayant un bp sur les droits ne sont pas gérés.

"David T." a écrit dans le message de news:

Bonjour,

J'aimerais connaitre la façon dont vous traitez les accès à C:System
Volume Information , car une erreur de droit est générée lors de l’accès
à cette ressource.

Par avance merci.

David T.

Arnaud CLERET a écrit :
Ce petit morceau de code devrait pouvoir vous aider :

private void PollingDirectory(string p_path)
{
if (p_path == null || p_path.Length==0) throw new
ArgumentNullException("p_path");
try
{
FileInfo[] filesList = new DirectoryInfo(p_path).GetFiles();
foreach (FileInfo fileInfo in filesList)
{
//TODO : Implémenter le processus métier a effectuer sur
le fichier
}

DirectoryInfo[] subDirectories = new
DirectoryInfo(p_path).GetDirectories();
foreach (DirectoryInfo directoryInfo in subDirectories)
PollingDirectory(directoryInfo.FullName);
}
catch (Exception e)
{
//TODO : Implement logs
throw;
}
}