web-dev-qa-db-fra.com

le fichier existe par modèle de nom de fichier

J'utilise:

File.Exists(filepath)

Ce que je voudrais faire, c'est échanger ceci pour un modèle, car la première partie du nom de fichier change.

Par exemple: le fichier pourrait être

01_Peach.xml
02_Peach.xml
03_Peach.xml

Comment puis-je vérifier si le fichier existe en fonction d'une sorte de modèle de recherche?

71
JL.

Vous pouvez faire une liste de répertoires avec un modèle pour vérifier les fichiers

string[] files = System.IO.Directory.GetFiles(path, "*_Peach.xml", System.IO.SearchOption.TopDirectoryOnly);
if (files.Length > 0)
{
    //file exist
}
113
monkey_p

Si vous utilisez .net framework 4 ou supérieur, vous pouvez utiliser Directory.EnumerateFiles

bool exist = Directory.EnumerateFiles(path, "*_Peach.xml").Any();

Cela pourrait être plus efficace que d'utiliser Directory.GetFiles puisque vous évitez d'itérer dans toute la liste de fichiers.

60
Claudio Redi
5
Mitch Wheat