111 votes

comment lire tous les fichiers dans un dossier particulier

Je veux lire tous les fichiers xml dans un dossier particulier dans c# .net

 XDocument doc2 = XDocument.Load((PG.SMNR.XMLDataSourceUtil.GetXMLFilePath(Locale, "Products/category/product.xml")));

J'ai plusieurs produits dans le dossier de catégorie. Je veux boucler le dossier et je devrais obtenir tous les noms de fichiers xml du produit.

 XDocument doc2 = XDocument.Load((PG.SMNR.XMLDataSourceUtil.GetXMLFilePath(Locale, "Products/category/x1.xml")));

261voto

Marc Gravell Points 482669
using System.IO;
...
foreach (string file in Directory.EnumerateFiles(folderPath, "*.xml"))
{
    string contents = File.ReadAllText(file);
}

Notez que ce qui précède utilise une fonctionnalité .NET 4.0 ; dans les versions précédentes, remplacez EnumerateFiles par GetFiles ). Remplacez également File.ReadAllText par votre méthode préférée de lecture des fichiers xml - peut-être XDocument , XmlDocument ou un XmlReader .

27voto

Adi Points 2302
using System.IO;

DirectoryInfo di = new DirectoryInfo(folder);
FileInfo[] files = di.GetFiles("*.xml");

14voto

Matthias Alleweldt Points 1812
using System.IO;

//...

  string[] files;

  if (Directory.Exists(Path)) {
    files = Directory.GetFiles(Path, @"*.xml", SearchOption.TopDirectoryOnly);
    //...

8voto

Chandan Kumar Points 700

Essayez ceci, cela fonctionne pour moi..

La syntaxe est GetFiles(string path, string searchPattern);

 var filePath = Server.MapPath("~/App_Data/");
string[] filePaths = Directory.GetFiles(@filePath, "*.*");

Ce code renverra tous les fichiers dans le dossier App_Data .

Le deuxième paramètre . indique le modèle de recherche avec l'extension de fichier où le premier * est pour le nom du fichier et le second est pour le format du fichier ou l'extension de fichier comme (*.png - n'importe quel nom de fichier au format .png.

7voto

trydis Points 1822

Vous pouvez utiliser la méthode DirectoryInfo.GetFiles

 FileInfo[] files = DirectoryInfo.GetFiles("*.xml");

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X