VB 2010 (45)XDocument 类

XDocument 类

https://docs.microsoft.com/zh-cn/dotnet/api/system.xml.linq.xdocument?view=netframework-4.8

表示 XML 文档。

下面的示例创建一个文档,然后向其中添加注释和一个元素。 然后,它使用查询结果撰写另一篇文档。

Dim srcTree As XDocument = _   
    <?xml version="1.0" encoding="utf-8" standalone="yes"?>  
        <!--This is a comment-->  
        <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"?>  
        <!--This is a comment-->  
        <Root>  
            <%= From el In srcTree.<Root>.Elements _  
                Where CStr(el).StartsWith("data") _  
                Select el %>  
        </Root>  
Console.WriteLine(doc)

该示例产生下面的输出:

<!--This is a comment-->  
<Root>  
  <Child1>data1</Child1>  
  <Child2>data2</Child2>  
  <Child3>data3</Child3>  
  <Child2>data4</Child2>  
</Root>

    XDocument替代了LINQ推出之前的XmlDocument对象。在处理XML文档时,XDocument对象更容易使用,尽管它不遵循任何国际标准。它使用这个名称空间中的其他新对象,例如XNamespace、XComment、XElement和XAttribute对象。

构造函数

 
XDocument()

初始化 XDocument 类的新实例。

XDocument(Object[])

使用指定的内容初始化 XDocument 类的新实例。

XDocument(XDeclaration, Object[])

用指定的 XDocument 和内容初始化 XDeclaration 类的新实例。

XDocument(XDocument)

从现有的 XDocument 对象初始化 XDocument 类的新实例。

方法 

Load(Stream)

使用指定的流创建一个新的 XDocument 实例。

Load(Stream, LoadOptions)

使用指定流创建新的 XDocument 实例,也可以选择保留空白,设置基 URI 和保留行信息。

Load(String)

从文件创建新 XDocument

Load(String, LoadOptions)

从文件创建新 XDocument,还可以选择保留空白和行信息以及设置基 URI。

Load(TextReader)

从 XDocument 创建新的 TextReader

Load(TextReader, LoadOptions)

从 XDocument 创建新 TextReader,还可以选择保留空白和行信息以及设置基 URI。

Load(XmlReader)

从 XDocument 创建新 XmlReader

Load(XmlReader, LoadOptions)

从 XDocument 加载 XmlReader,还可以选择设置基 URI 和保留行信息。

Save(Stream)

将此 XDocument 输出到指定的 Stream

Save(Stream, SaveOptions)

将此 XDocument 输出到指定的 Stream,(可选)并指定格式设置行为。

Save(String)

序列化此 XDocument 到文件,如果该文件存在,则覆盖现有的文件。

Save(String, SaveOptions)

将此 XDocument 序列化为文件,还可以选择禁用格式设置。

Save(TextWriter)

将此 XDocument 序列化为 TextWriter

Save(TextWriter, SaveOptions)

将此 XDocument 序列化为 TextWriter,还可以选择禁用格式设置。

Save(XmlWriter)

将此 XDocument 序列化为 XmlWriter

Load方法示例:

Dim  xdoc  A$  XDocument  =  XDocument.Load .("C:\Hamlet.xml")
Console .WriteLine (xdoc.Root.Name .ToString ())
Console .WriteLine (xdoc ..Root .HasAttributes .ToString ())
Save方法示例:
Dim xdoc As XDocument = XDocument.Load("C:\Hamlet.xml")
xdoc.Save ( "c : \CopyOfHamlet . xml")

一个示例:

Module Module1

    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</quantity>
'        </FilmOrder>
'     </multiFilmOrders>
'  </FilmOrderList>
'</MovieOrderDump>

发布了146 篇原创文章 · 获赞 0 · 访问量 2744

猜你喜欢

转载自blog.csdn.net/ngbshzhn/article/details/105572974
VB
今日推荐