ChatGPT解决这个技术问题 Extra ChatGPT

Populate XDocument from String

I'm working on a little something and I am trying to figure out whether I can load an XDocument from a string. XDocument.Load() seems to take the string passed to it as a path to a physical XML file.

I want to try and bypass the step of first having to create the physical XML file and jump straight to populating the XDocument.

Any ideas?


R
Ronald Wildenberg

You can use XDocument.Parse for this.


S
Samuel

You can use XDocument.Parse(string) instead of Load(string).


M
Martin Peck

How about this...?

TextReader tr = new StringReader("<Root>Content</Root>");
XDocument doc = XDocument.Load(tr);
Console.WriteLine(doc);

This was taken from the MSDN docs for XDocument.Load, found here...

http://msdn.microsoft.com/en-us/library/bb299692.aspx


But, as pointed out in other answers, Parse is the way to do this.
Actually, Parse internally uses a StringReader.
@Samuel (and upvoters) not all TextReaders are StringReaders. This is an example of using TextReader, the fact it coincidentally shares the same reader as Parse is irrelevant.
b
bruno conde

Try the Parse method.