Чтение любого xml из физического местоположения

#c# #asp.net #.net #vb.net

#c# #asp.net #.net #vb.net

Вопрос:

Я должен прочитать любой XML-файл из физического местоположения. Я делал, как показано ниже, но, он говорит, что файл теперь найден.

Например, у меня может быть любой файл (a.xml , b.xml , c.xml ,….. z.xml )
Поэтому я хочу использовать общий код для чтения xml.

Любая помощь? Спасибо

Комментарии:

1. Какое содержимое файла вы хотите, если есть несколько файлов, соответствующих * .xml? Все они?

Ответ №1:

Аргументом для Load() должен быть один файл. Вы можете перебирать массив файлов, чтобы открыть документы.

     static void Main(string[] args)
    {
        const string folder = "C:\";

        // Loop trough all
        foreach (var file in Directory.EnumerateFiles(folder, "*.xml"))
        {
            var document = XDocument.Load(file);
        }

        // When it should explicitly be one
        var singleFile = Directory.GetFiles(folder, "*.xml").SingleOrDefault();
        if (singleFile == null) throw new Exception("File missing or multiple files found");
        var document = XDocument.Load(singleFile);
    }
  

Ответ №2:

Поскольку вы отметили этот пост, vb.net вот ответ на vb.

 Dim fileList as new List(of FileInfo)
dim basepath as string = "drive:pathtobasefolder"

fileList = new IO.DirectoryInfo(basepath).GetFiles("*.xml")

For each fle in fileList
    Dim xDoc = XDocument.Load(fle.FullName)
    objIntegrationInfo.xmlstring  = xDoc.ToString()
Next