Porady: ładowanie XML z pliku, ciągu lub strumienia (Visual Basic)
Można utworzyć Literały XML (Visual Basic) i zapełnienia ich zawartość z zewnętrznego źródła, takie jak plik, ciąg znaków lub strumienia za pomocą kilku metod.Te metody są pokazane na poniższych przykładach.
[!UWAGA]
Na komputerze w poniższych instrukcjach mogą być wyświetlane inne nazwy i lokalizacje niektórych elementów interfejsu użytkownika programu Visual Studio. Te elementy są określane przez numer wersji Visual Studio oraz twoje ustawienia. Aby uzyskać więcej informacji, zobacz Dostosowywanie ustawień środowiska deweloperskiego w Visual Studio.
Aby załadować kodu XML z pliku
Aby wypełnić literał, takich jak XML XElement lub XDocument obiekt z pliku, użyj Load metody.Metoda ta może trwać ścieżki pliku, strumień tekstu lub strumieniu XML jako danych wejściowych.
Poniższy przykład kodu pokazuje użycie Load(String) metodę, aby wypełnić XDocument obiektu XML z pliku tekstowego.
Dim books = XDocument.Load(My.Application.Info.DirectoryPath & "\..\..\Data\books.xml") Console.WriteLine(books)
Aby załadować kodu XML z ciągu znaków
Aby wypełnić literał, takich jak XML XElement lub XDocument obiekt z ciągu znaków, można użyć Parse metody.
Poniższy przykład kodu pokazuje użycie XDocument.Parse(String) metodę, aby wypełnić XDocument obiektu XML z ciągu znaków.
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)
Aby załadować kodu XML ze strumienia
- Aby wypełnić literał, takich jak XML XElement lub XDocument obiekt ze strumienia, można użyć Load metody lub XNode.ReadFrom metody.
Poniższy przykład kodu pokazuje użycie ReadFrom metodę, aby wypełnić XDocument obiektu XML ze strumienia XML.
Dim reader =
System.Xml.XmlReader.Create(My.Application.Info.DirectoryPath &
"\..\..\Data\books.xml")
reader.MoveToContent()
Dim inputXml = XDocument.ReadFrom(reader)
Console.WriteLine(inputXml)