Clase XDocument
https://docs.microsoft.com/zh-cn/dotnet/api/system.xml.linq.xdocument?view=netframework-4.8
Representa un documento XML.
El siguiente ejemplo crea un documento y luego le agrega un comentario y un elemento. Luego, utiliza los resultados de la consulta para escribir otro documento.
Dim srcTree As XDocument = _
<? Xml version = "1.0" encoding = "utf-8" standalone = "yes"?>
<! - Esto es un comentario ->
<Root>
<Child1> data1 </Child1>
<Child2> data2 </Child2>
<Child3> data3 </Child3>
<Child2> data4 </Child2>
<Info5> info5 </Info5>
<Info6> info6 </Info6>
<Info7> info7 </Info7>
<Info8 > info8 </Info8>
</Root>
Dim doc As XDocument = _
<? xml version = "1.0" encoding = "utf-8" standalone = "yes"?>
<! - Este es un comentario ->
<Root>
<% = From el In srcTree. <Root> .Elements _
Where CStr (el) .StartsWith ("data") _
Seleccione el%>
</Root>
Console.WriteLine (doc)
Este ejemplo produce el siguiente resultado:
<! - Este es un comentario ->
<Root>
<Child1> data1 </Child1>
<Child2> data2 </Child2>
<Child3> data3 </Child3>
<Child2> data4 </Child2>
</Root>
XDocument reemplaza el objeto XmlDocument antes de la introducción de LINQ. El objeto XDocument es más fácil de usar cuando se trata con documentos XML, aunque no sigue ningún estándar internacional. Utiliza otros objetos nuevos en este espacio de nombres, como XNamespace, XComment, XElement y XAttribute.
Constructor
XDocument () | Inicialice una nueva instancia de la clase XDocument . |
XDocument (Objeto []) | Inicialice una nueva instancia de la clase XDocument con el contenido especificado . |
XDocument (XDeclaration, Object []) | Inicialice una nueva instancia de la clase XDeclaration con el XDocument y el contenido especificados . |
XDocument (XDocument) | Inicialice una nueva instancia de la clase XDocument desde el objeto XDocument existente . |
Método
Carga (corriente) | Cree una nueva instancia de XDocument utilizando la secuencia especificada . |
Carga (Stream, LoadOptions) | Use la secuencia especificada para crear una nueva instancia de XDocument , también puede optar por dejar en blanco, establecer el URI base y retener la información de la línea. |
Carga (cadena) | Cree un nuevo XDocument desde el archivo . |
Load (String, LoadOptions) | Para crear un nuevo XDocument a partir de un archivo , también puede optar por mantener la información en blanco y en línea y establecer el URI base. |
Cargar (TextReader) | Cree un nuevo TextReader desde XDocument . |
Carga (TextReader, LoadOptions) | Cree un nuevo TextReader a partir de XDocument , también puede optar por mantener la información en blanco y en línea y establecer el URI base. |
Carga (XmlReader) | |
Carga (XmlReader, LoadOptions) | Cargue XmlReader desde XDocument , también puede elegir establecer el URI base y retener la información de la línea. |
Guardar (Stream) | |
Guardar (Stream, SaveOptions) | Envíe este XDocument a la secuencia especificada (opcional) y especifique el comportamiento de formateo. |
Guardar (cadena) | Serialice este XDocument a un archivo, si el archivo existe, sobrescriba el archivo existente. |
Guardar (String, SaveOptions) | Serialice este XDocument en un archivo y, opcionalmente, desactive el formateo. |
Guardar (TextWriter) | Este XDocument secuencia en una TextWriter . |
Guardar (TextWriter, SaveOptions) | Este XDocument secuencia en una TextWriter , también se puede optar por desactivar el formato. |
Guardar (XmlWriter) |
Ejemplo de método de carga:
Dim xdoc A $ XDocument = XDocument.Load. ("C: \ Hamlet.xml")
Consola .WriteLine (xdoc.Root.Name .ToString ())
Consola .WriteLine (xdoc ..Root .HasAttributes .ToString ())
Guardar方法 示例 :
Dim xdoc As XDocument = XDocument.Load ("C: \ Hamlet.xml")
xdoc.Save ("c: \ CopyOfHamlet. Xml")
Un ejemplo:
Módulo Módulo1
Sub Main ()
testXdocument ()
End Sub
Private Sub testXdocument ()
Dim xDoc As XDocument = XDocument.Load ("~ \ test.xml")
Console.WriteLine (xDoc.Root.Name.ToString)
Console.WriteLine (xDoc.Root.HasElements.ToString)
xDoc.Save ("~ \ testcopy.xml")
Console.Read ()
End Sub
End Module
'附 : text.xml 内容
' <? Xml version = "1.0" encoding = "utf-8"?>
'<MovieOrderDump>
' <FilmOrderList>
'<multiFilmOrders>
' <FilmOrder filmID = "101">
'<name> Grease </name>
' <quantity> lO </quantity>
'</FilmOrder>
' <FilmOrder filmID = "102">
'<quantity> 11 </quantity>
' </FilmOrder>
'<FilmOrder filmID = "l03">
'<name> Star Vlars </name>
' <quantity> l2 </ cantidad>
'</FilmOrder>
' </multiFilmOrders>
'</FilmOrderList>
' </MovieOrderDump>