XElement.Load Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Создает новый из XElement файла, указанного универсальным кодом ресурса (URI), из TextReaderили из файла XmlReader.
Перегрузки
| Имя | Описание |
|---|---|
| Load(TextReader, LoadOptions) |
XElement Загружает данные из TextReader, при необходимости сохраняя пробелы и сохраняя сведения о строке. |
| Load(XmlReader, LoadOptions) |
XElement Загружает данные из XmlReader, при необходимости сохраняя пробелы, устанавливая базовый универсальный код ресурса (URI) и сохраняя сведения о строке. |
| Load(String, LoadOptions) |
XElement Загружает файл из файла, при необходимости сохраняя пробелы, устанавливая базовый универсальный код ресурса (URI) и сохраняя сведения о строке. |
| Load(Stream, LoadOptions) |
Создает новый XElement экземпляр с помощью указанного потока, при необходимости сохраняя пробелы, устанавливая базовый универсальный код ресурса (URI) и сохраняя сведения о строке. |
| Load(TextReader) |
Загружает объект XElement из TextReader. |
| Load(String) |
Загружает файл XElement из файла. |
| Load(Stream) |
Создает новый XElement экземпляр с помощью указанного потока. |
| Load(XmlReader) |
Комментарии
Вы можете использовать одну из перегрузок этого метода для загрузки XElement из файла, a TextReaderили an XmlReader.
Чтобы создать XElement из строки, содержащей XML, используйте Parse.
Load(TextReader, LoadOptions)
- Исходный код:
- XElement.cs
- Исходный код:
- XElement.cs
- Исходный код:
- XElement.cs
- Исходный код:
- XElement.cs
- Исходный код:
- XElement.cs
XElement Загружает данные из TextReader, при необходимости сохраняя пробелы и сохраняя сведения о строке.
public:
static System::Xml::Linq::XElement ^ Load(System::IO::TextReader ^ textReader, System::Xml::Linq::LoadOptions options);
public static System.Xml.Linq.XElement Load(System.IO.TextReader textReader, System.Xml.Linq.LoadOptions options);
static member Load : System.IO.TextReader * System.Xml.Linq.LoadOptions -> System.Xml.Linq.XElement
Public Shared Function Load (textReader As TextReader, options As LoadOptions) As XElement
Параметры
- textReader
- TextReader
Объект TextReader , который будет прочитан для содержимого XElement .
- options
- LoadOptions
Значение, LoadOptions указывающее поведение пробелов и загрузку базовых URI и сведений о строке.
Возвращаемое значение
Объект XElement , содержащий XML,который был считывался из указанного TextReader.
Примеры
В следующем примере загружается XElement из StringReader двух разных способов: сохранение пробелов и сохранение пробелов. Затем он использует запрос для определения количества узлов пробелов в результирующем xml-дереве.
TextReader sr;
int whiteSpaceNodes;
sr = new StringReader("<Root> <Child> </Child> </Root>");
XElement xmlTree1 = XElement.Load(sr, LoadOptions.None);
sr.Close();
whiteSpaceNodes = xmlTree1
.DescendantNodesAndSelf()
.OfType<XText>()
.Where(tNode => tNode.ToString().Trim().Length == 0)
.Count();
Console.WriteLine("Count of white space nodes (not preserving whitespace): {0}", whiteSpaceNodes);
sr = new StringReader("<Root> <Child> </Child> </Root>");
XElement xmlTree2 = XElement.Load(sr, LoadOptions.PreserveWhitespace);
sr.Close();
whiteSpaceNodes = xmlTree2
.DescendantNodesAndSelf()
.OfType<XText>()
.Where(tNode => tNode.ToString().Trim().Length == 0)
.Count();
Console.WriteLine("Count of white space nodes (preserving whitespace): {0}", whiteSpaceNodes);
Dim sr As TextReader
Dim whiteSpaceNodes As Integer
sr = New StringReader("<Root> <Child> </Child> </Root>")
Dim xmlTree1 As XElement = XElement.Load(sr, LoadOptions.None)
sr.Close()
whiteSpaceNodes = xmlTree1 _
.DescendantNodesAndSelf() _
.OfType(Of XText)() _
.Where(Function(ByVal tNode As XNode) tNode.ToString().Trim().Length = 0) _
.Count()
Console.WriteLine("Count of white space nodes (not preserving whitespace): {0}", whiteSpaceNodes)
sr = New StringReader("<Root> <Child> </Child> </Root>")
Dim xmlTree2 As XElement = XElement.Load(sr, LoadOptions.PreserveWhitespace)
sr.Close()
whiteSpaceNodes = xmlTree2 _
.DescendantNodesAndSelf() _
.OfType(Of XText)() _
.Where(Function(ByVal tNode As XNode) tNode.ToString().Trim().Length = 0) _
.Count()
Console.WriteLine("Count of white space nodes (preserving whitespace): {0}", whiteSpaceNodes)
В примере получается следующий вывод.
Count of white space nodes (not preserving whitespace): 0
Count of white space nodes (preserving whitespace): 3
В следующем примере данные строки загружаются при загрузке из него TextReader. Затем она выводит сведения о строке.
TextReader sr = new StringReader(
@"<Root>
<Child>
<GrandChild1/>
<GrandChild2/>
</Child>
</Root>");
XElement po = XElement.Load(sr,
LoadOptions.SetLineInfo);
Console.WriteLine("{0}{1}{2}",
"Element Name".PadRight(20),
"Line".PadRight(5),
"Position");
Console.WriteLine("{0}{1}{2}",
"------------".PadRight(20),
"----".PadRight(5),
"--------");
foreach (XElement e in po.DescendantsAndSelf())
Console.WriteLine("{0}{1}{2}",
("".PadRight(e.Ancestors().Count() * 2) + e.Name).PadRight(20),
((IXmlLineInfo)e).LineNumber.ToString().PadRight(5),
((IXmlLineInfo)e).LinePosition);
Dim sr As TextReader = New StringReader( _
"<Root>" & Environment.NewLine & _
" <Child>" & Environment.NewLine & _
" <GrandChild1/>" & Environment.NewLine & _
" <GrandChild2/>" & Environment.NewLine & _
" </Child>" & Environment.NewLine & _
"</Root>")
Dim po As XElement = XElement.Load(sr, LoadOptions.SetLineInfo)
Console.WriteLine("{0}{1}{2}", _
"Element Name".PadRight(20), _
"Line".PadRight(5), _
"Position")
Console.WriteLine("{0}{1}{2}", _
"------------".PadRight(20), _
"----".PadRight(5), _
"--------")
For Each e As XElement In po.DescendantsAndSelf()
Console.WriteLine("{0}{1}{2}", _
("".PadRight(e.Ancestors().Count() * 2) & e.Name.ToString).PadRight(20), _
(DirectCast(e, IXmlLineInfo)).LineNumber.ToString().PadRight(5), _
(DirectCast(e, IXmlLineInfo)).LinePosition)
Next
В примере получается следующий вывод.
Element Name Line Position
------------ ---- --------
Root 1 2
Child 2 4
GrandChild1 3 6
GrandChild2 4 6
Комментарии
Если исходный XML-код отступен, установка PreserveWhitespace флага options приводит к тому, что читатель считывает все пробелы в исходном XML-файле. Узлы типа XText создаются как для значительного, так и для незначительного пробела.
Если исходный XML-код отступен, не устанавливая PreserveWhitespace флаг, options читатель пропускает все незначительные пробелы в исходном XML. Дерево XML создается без текстовых узлов для незначительного пробела.
Если исходный XML-код не отступен, установка флага PreserveWhitespaceoptions не действует. Значительные пробелы по-прежнему сохраняются, и нет диапазонов незначительных пробелов, которые могут привести к созданию дополнительных узлов текста пробелов.
Дополнительные сведения см. в разделе "Сохранение пробелов при загрузке или анализе XML " и сохранении пробелов во время сериализации.
Используется Parse для создания XElement из строки, содержащей XML.
Параметр SetBaseUri не будет влиять при загрузке из .TextReader
При установке флага SetLineInfo существует штраф производительности.
Данные строки точны сразу после загрузки XML-документа. При изменении XML-дерева после загрузки документа сведения о строке могут стать бессмысленными.
Функции загрузки LINQ to XML основаны на XmlReader. Таким образом, вы можете перехватывать все исключения, создаваемые XmlReader.Create методами перегрузки и XmlReader методами, которые считывают и анализируют документ.
См. также раздел
Применяется к
Load(XmlReader, LoadOptions)
- Исходный код:
- XElement.cs
- Исходный код:
- XElement.cs
- Исходный код:
- XElement.cs
- Исходный код:
- XElement.cs
- Исходный код:
- XElement.cs
public:
static System::Xml::Linq::XElement ^ Load(System::Xml::XmlReader ^ reader, System::Xml::Linq::LoadOptions options);
public static System.Xml.Linq.XElement Load(System.Xml.XmlReader reader, System.Xml.Linq.LoadOptions options);
static member Load : System.Xml.XmlReader * System.Xml.Linq.LoadOptions -> System.Xml.Linq.XElement
Public Shared Function Load (reader As XmlReader, options As LoadOptions) As XElement
Параметры
- options
- LoadOptions
Значение, LoadOptions указывающее поведение пробелов и загрузку базовых URI и сведений о строке.
Возвращаемое значение
Объект XElement , содержащий XML,который был считывался из указанного XmlReader.
Примеры
В следующем примере загружается информация о строке XmlReader, которую она загружает из . Затем она выводит сведения о строке.
string markup =
@"<Root>
<Child>
<GrandChild/>
</Child>
</Root>";
// Create a reader and move to the content.
using (XmlReader nodeReader = XmlReader.Create(new StringReader(markup)))
{
// the reader must be in the Interactive state in order to
// Create a LINQ to XML tree from it.
nodeReader.MoveToContent();
XElement xRoot = XElement.Load(nodeReader, LoadOptions.SetLineInfo);
Console.WriteLine("{0}{1}{2}",
"Element Name".PadRight(20),
"Line".PadRight(5),
"Position");
Console.WriteLine("{0}{1}{2}",
"------------".PadRight(20),
"----".PadRight(5),
"--------");
foreach (XElement e in xRoot.DescendantsAndSelf())
Console.WriteLine("{0}{1}{2}",
("".PadRight(e.Ancestors().Count() * 2) + e.Name).PadRight(20),
((IXmlLineInfo)e).LineNumber.ToString().PadRight(5),
((IXmlLineInfo)e).LinePosition);
}
Dim markup As String = _
"<Root>" & Environment.NewLine & _
" <Child>" & Environment.NewLine & _
" <GrandChild/>" & Environment.NewLine & _
" </Child>" & Environment.NewLine & _
"</Root>"
' Create a reader and move to the content.
Using nodeReader As XmlReader = XmlReader.Create(New StringReader(markup))
' the reader must be in the Interactive state in order to
' Create a LINQ to XML tree from it.
nodeReader.MoveToContent()
Dim xRoot As XElement = XElement.Load(nodeReader, LoadOptions.SetLineInfo)
Console.WriteLine("{0}{1}{2}", _
"Element Name".PadRight(20), _
"Line".PadRight(5), _
"Position")
Console.WriteLine("{0}{1}{2}", _
"------------".PadRight(20), _
"----".PadRight(5), _
"--------")
For Each e As XElement In xRoot.DescendantsAndSelf()
Console.WriteLine("{0}{1}{2}", _
("".PadRight(e.Ancestors().Count() * 2) & e.Name.ToString).PadRight(20), _
(DirectCast(e, IXmlLineInfo)).LineNumber.ToString().PadRight(5), _
(DirectCast(e, IXmlLineInfo)).LinePosition)
Next
End Using
В примере получается следующий вывод.
Element Name Line Position
------------ ---- --------
Root 1 2
Child 2 6
GrandChild 3 10
Комментарии
Создав XmlNodeReader документ DOM, а затем используя XmlNodeReader его для создания XElement, этот метод можно использовать для создания копии документа DOM в дереве LINQ to XML.
Используется Parse для создания XElement из строки, содержащей XML.
Параметр PreserveWhitespace недопустим при загрузке из .XmlReader Она XmlReader будет настроена для чтения пробелов или нет. Дерево LINQ to XML будет заполнено узлами пробелов, которые будут отображаться в области чтения. Это будет поведение независимо от того, задано ли PreserveWhitespace оно или нет.
У XmlReader него может быть допустимый базовый универсальный код ресурса (URI) или нет. Если задано SetBaseUri, базовый универсальный код ресурса (URI) будет задан в дереве XML из базового URI, который сообщается XmlReader.
У него XmlReader могут быть допустимые сведения о строке или нет. Если заданоSetLineInfo, данные строки будут заданы в xml-дереве из сведений о строке, сообщаемых данными.XmlReader
При установке флага SetLineInfo существует штраф производительности.
Данные строки точны сразу после загрузки XML-документа. При изменении XML-дерева после загрузки документа сведения о строке могут стать бессмысленными.
Функции загрузки LINQ to XML основаны на XmlReader. Таким образом, вы можете перехватывать все исключения, создаваемые XmlReader.Create методами перегрузки и XmlReader методами, которые считывают и анализируют документ.
См. также раздел
Применяется к
Load(String, LoadOptions)
- Исходный код:
- XElement.cs
- Исходный код:
- XElement.cs
- Исходный код:
- XElement.cs
- Исходный код:
- XElement.cs
- Исходный код:
- XElement.cs
XElement Загружает файл из файла, при необходимости сохраняя пробелы, устанавливая базовый универсальный код ресурса (URI) и сохраняя сведения о строке.
public:
static System::Xml::Linq::XElement ^ Load(System::String ^ uri, System::Xml::Linq::LoadOptions options);
public static System.Xml.Linq.XElement Load(string uri, System.Xml.Linq.LoadOptions options);
static member Load : string * System.Xml.Linq.LoadOptions -> System.Xml.Linq.XElement
Public Shared Function Load (uri As String, options As LoadOptions) As XElement
Параметры
- options
- LoadOptions
Значение, LoadOptions указывающее поведение пробелов и загрузку базовых URI и сведений о строке.
Возвращаемое значение
Объект XElement , содержащий содержимое указанного файла.
Примеры
В следующем примере файл загружается XElement двумя разными способами: сохранение пробелов и сохранение пробелов. Затем он использует запрос для определения количества узлов пробелов в результирующем xml-дереве.
XElement xmlTree1 = XElement.Parse("<Root> <Child> </Child> </Root>", LoadOptions.PreserveWhitespace);
xmlTree1.Save("Tree.xml");
Console.WriteLine(xmlTree1);
int whiteSpaceNodes;
XElement xmlTree2 = XElement.Load("Tree.xml",
LoadOptions.None);
whiteSpaceNodes = xmlTree2
.DescendantNodesAndSelf()
.OfType<XText>()
.Where(tNode => tNode.ToString().Trim().Length == 0)
.Count();
Console.WriteLine("Count of white space nodes (not preserving whitespace): {0}", whiteSpaceNodes);
XElement xmlTree3 = XElement.Load("Tree.xml",
LoadOptions.PreserveWhitespace);
whiteSpaceNodes = xmlTree3
.DescendantNodesAndSelf()
.OfType<XText>()
.Where(tNode => tNode.ToString().Trim().Length == 0)
.Count();
Console.WriteLine("Count of white space nodes (preserving whitespace): {0}", whiteSpaceNodes);
Dim xmlTree1 As XElement = XElement.Parse("<Root> <Child> </Child> </Root>", LoadOptions.PreserveWhitespace)
xmlTree1.Save("Tree.xml")
Console.WriteLine(xmlTree1)
Dim whiteSpaceNodes As Integer
Dim xmlTree2 As XElement = XElement.Load("Tree.xml", LoadOptions.None)
whiteSpaceNodes = xmlTree2 _
.DescendantNodesAndSelf() _
.OfType(Of XText)() _
.Where(Function(ByVal tNode As XNode) tNode.ToString().Trim().Length = 0) _
.Count()
Console.WriteLine("Count of white space nodes (not preserving whitespace): {0}", whiteSpaceNodes)
Dim xmlTree3 As XElement = XElement.Load("Tree.xml", LoadOptions.PreserveWhitespace)
whiteSpaceNodes = xmlTree3 _
.DescendantNodesAndSelf() _
.OfType(Of XText)() _
.Where(Function(ByVal tNode As XNode) tNode.ToString().Trim().Length = 0) _
.Count()
Console.WriteLine("Count of white space nodes (preserving whitespace): {0}", whiteSpaceNodes)
В примере получается следующий вывод.
<Root> <Child> </Child> </Root>
Count of white space nodes (not preserving whitespace): 0
Count of white space nodes (preserving whitespace): 3
В следующем примере загружается базовый универсальный код ресурса (URI) и сведения о строке при загрузке файла. Затем он выводит базовый URI и сведения о строке.
В этом примере используется следующий файл ресурсов: пример XML-файла: типичный заказ на покупку (LINQ to XML).
XElement po = XElement.Load("PurchaseOrder.xml",
LoadOptions.SetBaseUri | LoadOptions.SetLineInfo);
string[] splitUri = po.BaseUri.Split('/');
Console.WriteLine("BaseUri: {0}", splitUri[splitUri.Length - 1]);
Console.WriteLine();
Console.WriteLine("{0}{1}{2}",
"Element Name".PadRight(20),
"Line".PadRight(5),
"Position");
Console.WriteLine("{0}{1}{2}",
"------------".PadRight(20),
"----".PadRight(5),
"--------");
foreach (XElement e in po.DescendantsAndSelf())
Console.WriteLine("{0}{1}{2}",
("".PadRight(e.Ancestors().Count() * 2) + e.Name).PadRight(20),
((IXmlLineInfo)e).LineNumber.ToString().PadRight(5),
((IXmlLineInfo)e).LinePosition);
Dim po As XElement = XElement.Load("PurchaseOrder.xml", LoadOptions.SetBaseUri Or LoadOptions.SetLineInfo)
Dim splitUri() As String = po.BaseUri.Split("/")
Console.WriteLine("BaseUri: {0}", splitUri(splitUri.Length - 1))
Console.WriteLine()
Console.WriteLine("{0}{1}{2}", _
"Element Name".PadRight(20), _
"Line".PadRight(5), _
"Position")
Console.WriteLine("{0}{1}{2}", _
"------------".PadRight(20), _
"----".PadRight(5), _
"--------")
For Each e As XElement In po.DescendantsAndSelf()
Console.WriteLine("{0}{1}{2}", _
("".PadRight(e.Ancestors().Count() * 2) & e.Name.ToString()).PadRight(20), _
(DirectCast(e, IXmlLineInfo)).LineNumber.ToString().PadRight(5), _
(DirectCast(e, IXmlLineInfo)).LinePosition)
Next
В примере получается следующий вывод.
BaseUri: PurchaseOrder.xml
Element Name Line Position
------------ ---- --------
PurchaseOrder 2 2
Address 3 4
Name 4 6
Street 5 6
City 6 6
State 7 6
Zip 8 6
Country 9 6
Address 11 4
Name 12 6
Street 13 6
City 14 6
State 15 6
Zip 16 6
Country 17 6
DeliveryNotes 19 4
Items 20 4
Item 21 6
ProductName 22 8
Quantity 23 8
USPrice 24 8
Comment 25 8
Item 27 6
ProductName 28 8
Quantity 29 8
USPrice 30 8
ShipDate 31 8
Комментарии
Если исходный XML-код отступен, установка PreserveWhitespace флага options приводит к тому, что читатель считывает все пробелы в исходном XML-файле. Узлы типа XText создаются как для значительного, так и для незначительного пробела.
Если исходный XML-код отступен, не устанавливая PreserveWhitespace флаг, options читатель пропускает все незначительные пробелы в исходном XML. Дерево XML создается без текстовых узлов для незначительного пробела.
Если исходный XML-код не отступен, установка флага PreserveWhitespaceoptions не действует. Значительные пробелы по-прежнему сохраняются, и нет диапазонов незначительных пробелов, которые могут привести к созданию дополнительных узлов текста пробелов.
Дополнительные сведения см. в разделе "Сохранение пробелов при загрузке или анализе XML " и сохранении пробелов во время сериализации.
Используется Parse для создания XElement из строки, содержащей XML.
Если задать SetBaseUri флаги и SetLineInfo флаги, есть штраф производительности.
Базовый универсальный код ресурса (URI) и сведения о строке точны сразу после загрузки XML-документа. При изменении XML-дерева после загрузки документа базовый универсальный код ресурса (URI) и сведения о строке могут стать бессмысленными.
Функции загрузки LINQ to XML основаны на XmlReader. Таким образом, вы можете перехватывать все исключения, создаваемые XmlReader.Create методами перегрузки и XmlReader методами, которые считывают и анализируют документ.
См. также раздел
Применяется к
Load(Stream, LoadOptions)
- Исходный код:
- XElement.cs
- Исходный код:
- XElement.cs
- Исходный код:
- XElement.cs
- Исходный код:
- XElement.cs
- Исходный код:
- XElement.cs
Создает новый XElement экземпляр с помощью указанного потока, при необходимости сохраняя пробелы, устанавливая базовый универсальный код ресурса (URI) и сохраняя сведения о строке.
public:
static System::Xml::Linq::XElement ^ Load(System::IO::Stream ^ stream, System::Xml::Linq::LoadOptions options);
public static System.Xml.Linq.XElement Load(System.IO.Stream stream, System.Xml.Linq.LoadOptions options);
static member Load : System.IO.Stream * System.Xml.Linq.LoadOptions -> System.Xml.Linq.XElement
Public Shared Function Load (stream As Stream, options As LoadOptions) As XElement
Параметры
- stream
- Stream
Поток, содержащий XML-данные.
- options
- LoadOptions
Объект, указывающий, следует ли загружать базовые LoadOptions URI и сведения о строке.
Возвращаемое значение
Объект, используемый XElement для чтения данных, содержащихся в потоке.
Комментарии
Функции загрузки LINQ to XML основаны на XmlReader. Таким образом, вы можете перехватывать все исключения, создаваемые XmlReader.Create методами перегрузки и XmlReader методами, которые считывают и анализируют документ.
Если необходимо изменить XmlReaderSettings, выполните следующие действия:
Создайте, XmlReader вызвав одну из Create перегрузок, которые принимают XmlReaderSettings в качестве параметра.
XmlReader Передайте один из XElementLoad перегрузок, которые принимают XmlReader в качестве параметра.
Применяется к
Load(TextReader)
- Исходный код:
- XElement.cs
- Исходный код:
- XElement.cs
- Исходный код:
- XElement.cs
- Исходный код:
- XElement.cs
- Исходный код:
- XElement.cs
Загружает объект XElement из TextReader.
public:
static System::Xml::Linq::XElement ^ Load(System::IO::TextReader ^ textReader);
public static System.Xml.Linq.XElement Load(System.IO.TextReader textReader);
static member Load : System.IO.TextReader -> System.Xml.Linq.XElement
Public Shared Function Load (textReader As TextReader) As XElement
Параметры
- textReader
- TextReader
Объект TextReader , который будет прочитан для содержимого XElement .
Возвращаемое значение
Объект XElement , содержащий XML,который был считывался из указанного TextReader.
Примеры
В следующем примере загружается элемент из элемента StringReader.
TextReader sr = new StringReader("<Root><Child/></Root>");
XElement xmlTree = XElement.Load(sr);
sr.Close();
Console.WriteLine(xmlTree);
Dim sr As TextReader = New StringReader("<Root><Child/></Root>")
Dim xmlTree As XElement = XElement.Load(sr)
sr.Close()
Console.WriteLine(xmlTree)
В примере получается следующий вывод.
<Root>
<Child />
</Root>
Комментарии
Этот метод считывает необработанный XML-код в дерево XML. Он удаляет все незначительные пробелы в файле.
Функции загрузки LINQ to XML основаны на XmlReader. Таким образом, вы можете перехватывать все исключения, создаваемые XmlReader.Create методами перегрузки и XmlReader методами, которые считывают и анализируют документ.
См. также раздел
Применяется к
Load(String)
- Исходный код:
- XElement.cs
- Исходный код:
- XElement.cs
- Исходный код:
- XElement.cs
- Исходный код:
- XElement.cs
- Исходный код:
- XElement.cs
Загружает файл XElement из файла.
public:
static System::Xml::Linq::XElement ^ Load(System::String ^ uri);
public static System.Xml.Linq.XElement Load(string uri);
static member Load : string -> System.Xml.Linq.XElement
Public Shared Function Load (uri As String) As XElement
Параметры
Возвращаемое значение
Объект XElement , содержащий содержимое указанного файла.
Примеры
В следующем примере создается xml-дерево, сохраняет его в файл, а затем используется этот метод для загрузки XElement из файла.
XElement xmlTree1 = new XElement("Root",
new XElement("Child", "content")
);
xmlTree1.Save("Tree.xml");
XElement xmlTree2 = XElement.Load("Tree.xml");
Console.WriteLine(xmlTree2.Name);
Dim xmlTree1 As XElement = _
<Root>
<Child>Content</Child>
</Root>
xmlTree1.Save("Tree.xml")
Dim xmlTree2 As XElement = XElement.Load("Tree.xml")
Console.WriteLine(xmlTree2.Name)
В примере получается следующий вывод.
Root
Комментарии
Этот метод считывает необработанный XML-код в дерево XML. Он удаляет все незначительные пробелы в файле.
Функции загрузки LINQ to XML основаны на XmlReader. Таким образом, вы можете перехватывать все исключения, создаваемые XmlReader.Create методами перегрузки и XmlReader методами, которые считывают и анализируют документ.
См. также раздел
Применяется к
Load(Stream)
- Исходный код:
- XElement.cs
- Исходный код:
- XElement.cs
- Исходный код:
- XElement.cs
- Исходный код:
- XElement.cs
- Исходный код:
- XElement.cs
Создает новый XElement экземпляр с помощью указанного потока.
public:
static System::Xml::Linq::XElement ^ Load(System::IO::Stream ^ stream);
public static System.Xml.Linq.XElement Load(System.IO.Stream stream);
static member Load : System.IO.Stream -> System.Xml.Linq.XElement
Public Shared Function Load (stream As Stream) As XElement
Параметры
- stream
- Stream
Поток, содержащий XML-данные.
Возвращаемое значение
Объект, используемый XElement для чтения данных, содержащихся в потоке.
Комментарии
Если вы хотите управлять параметрами загрузки, используйте Load перегрузку, которая принимает LoadOptions в качестве параметра.
Функции загрузки LINQ to XML основаны на XmlReader. Таким образом, вы можете перехватывать все исключения, создаваемые XmlReader.Create методами перегрузки и XmlReader методами, которые считывают и анализируют документ.
Если необходимо изменить XmlReaderSettings, выполните следующие действия:
Создайте, XmlReader вызвав одну из Create перегрузок, которые принимают XmlReaderSettings в качестве параметра.
XmlReader Передайте один из XElementLoad перегрузок, которые принимают XmlReader в качестве параметра.
Применяется к
Load(XmlReader)
- Исходный код:
- XElement.cs
- Исходный код:
- XElement.cs
- Исходный код:
- XElement.cs
- Исходный код:
- XElement.cs
- Исходный код:
- XElement.cs
public:
static System::Xml::Linq::XElement ^ Load(System::Xml::XmlReader ^ reader);
public static System.Xml.Linq.XElement Load(System.Xml.XmlReader reader);
static member Load : System.Xml.XmlReader -> System.Xml.Linq.XElement
Public Shared Function Load (reader As XmlReader) As XElement
Параметры
Возвращаемое значение
Объект XElement , содержащий XML,который был считывался из указанного XmlReader.
Примеры
В следующем примере создается документ DOM, создается из документа DOM, создается XmlNodeReader дерево из средства чтения. Этот код эффективно копирует документ DOM в дерево LINQ to XML.
// Create a DOM document with some content.
XmlDocument doc = new XmlDocument();
XmlElement child = doc.CreateElement("Child");
child.InnerText = "child contents";
XmlElement root = doc.CreateElement("Root");
root.AppendChild(child);
doc.AppendChild(root);
// Create a reader and move to the content.
using (XmlNodeReader nodeReader = new XmlNodeReader(doc)) {
// the reader must be in the Interactive state in order to
// Create a LINQ to XML tree from it.
nodeReader.MoveToContent();
XElement xRoot = XElement.Load(nodeReader);
Console.WriteLine(xRoot);
}
' Create a DOM document with some content.
Dim doc As XmlDocument = New XmlDocument()
Dim child As XmlElement = doc.CreateElement("Child")
child.InnerText = "child contents"
Dim root As XmlElement = doc.CreateElement("Root")
root.AppendChild(child)
doc.AppendChild(root)
' Create a reader and move to the content.
Using nodeReader = New XmlNodeReader(doc)
' the reader must be in the Interactive state in order to
' Create a LINQ to XML tree from it.
nodeReader.MoveToContent()
Dim xRoot As XElement = XElement.Load(nodeReader)
Console.WriteLine(xRoot)
End Using
В примере получается следующий вывод.
<Root>
<Child>child contents</Child>
</Root>
Комментарии
Создав XmlNodeReader документ DOM, а затем используя XmlNodeReader его для создания XElement, этот метод можно использовать для создания копии документа DOM в дереве LINQ to XML.
Функции загрузки LINQ to XML основаны на XmlReader. Таким образом, вы можете перехватывать все исключения, создаваемые XmlReader.Create методами перегрузки и XmlReader методами, которые считывают и анализируют документ.