Поделиться через


Практическое руководство. Загрузка XML-кода из файла, строки или потока (Visual Basic)

Можно создать XML-литералы и заполнить их содержимым из внешнего источника, например файла, строки или потока с помощью нескольких методов. Эти методы показаны в следующих примерах.

Примечание.

Отображаемые на компьютере имена или расположения некоторых элементов пользовательского интерфейса Visual Studio могут отличаться от указанных в следующих инструкциях. Это зависит от имеющегося выпуска Visual Studio и используемых параметров. Дополнительные сведения см. в разделе Персонализация среды IDE.

Загрузка XML из файла

Чтобы заполнить XML-литерал, например XElementXDocument или объект из файла, используйте Load метод. Этот метод может принимать путь к файлу, текстовый поток или XML-поток в качестве входных данных.

В следующем примере кода показано использование Load(String) метода для заполнения XDocument объекта XML из текстового файла.

Dim books = 
    XDocument.Load(My.Application.Info.DirectoryPath & 
                   "\..\..\Data\books.xml")
Console.WriteLine(books)

Загрузка XML из строки

Чтобы заполнить XML-литерал, например XElementXDocument или объект из строки, можно использовать Parse метод.

В следующем примере кода показано использование XDocument.Parse(String) метода для заполнения XDocument объекта XML из строки.

Dim xmlString = "<Book id=""bk102"">" & vbCrLf & 
                "  <Author>Garcia, Debra</Author>" & vbCrLf & 
                "  <Title>Writing Code</Title>" & vbCrLf & 
                "  <Price>5.95</Price>" & vbCrLf & 
                "</Book>"
Dim xmlElem = XElement.Parse(xmlString)
Console.WriteLine(xmlElem)

Загрузка XML из потока

Чтобы заполнить XML-литерал, например XElement объект или XDocument объект из потока, можно использовать Load метод или XNode.ReadFrom метод.

В следующем примере кода показано использование ReadFrom метода для заполнения XDocument объекта XML из XML-потока.

Dim reader = 
  System.Xml.XmlReader.Create(My.Application.Info.DirectoryPath & 
                              "\..\..\Data\books.xml")
reader.MoveToContent()
Dim inputXml = XDocument.ReadFrom(reader)
Console.WriteLine(inputXml)

См. также