XDocument.Parse メソッド

定義

文字列から新しい XDocument を作成し、必要に応じて、空白の維持、ベース URI の設定、および行情報の保持を行います。

オーバーロード

Parse(String)

文字列から新しい XDocument を作成します。

Parse(String, LoadOptions)

文字列から新しい XDocument を作成し、必要に応じて、空白の維持、ベース URI の設定、および行情報の保持を行います。

次の例では、XML を含む文字列を作成します。 次に、文字列を解析して .XDocument

string str =  
@"<?xml version=""1.0""?>  
<!-- comment at the root level -->  
<Root>  
    <Child>Content</Child>  
</Root>";  
XDocument doc = XDocument.Parse(str);  
Console.WriteLine(doc);  
Dim str As String = _  
    "<?xml version= '1.0'?>" & _  
    "<!-- comment at the root level -->" & _  
    "<Root>" & _  
    "  <Child>Content</Child>" & _  
    "</Root>"  

Dim doc As XDocument = XDocument.Parse(str)  
Console.WriteLine(doc)  

この例を実行すると、次の出力が生成されます。

<!-- comment at the root level -->  
<Root>  
  <Child>Content</Child>  
</Root>  

注釈

このメソッドは文字列を解析し、XML ツリーを作成します。

Parse(String)

文字列から新しい XDocument を作成します。

public:
 static System::Xml::Linq::XDocument ^ Parse(System::String ^ text);
public static System.Xml.Linq.XDocument Parse (string text);
static member Parse : string -> System.Xml.Linq.XDocument
Public Shared Function Parse (text As String) As XDocument

パラメーター

text
String

XML を格納している文字列。

戻り値

XDocument

XML を格納した文字列から設定された XDocument

次の例では、XML を含む文字列を作成します。 次に、文字列を解析して .XDocument

string str =  
@"<?xml version=""1.0""?>  
<!-- comment at the root level -->  
<Root>  
    <Child>Content</Child>  
</Root>";  
XDocument doc = XDocument.Parse(str);  
Console.WriteLine(doc);  
Dim str As String = _  
    "<?xml version= '1.0'?>" & _  
    "<!-- comment at the root level -->" & _  
    "<Root>" & _  
    "  <Child>Content</Child>" & _  
    "</Root>"  

Dim doc As XDocument = XDocument.Parse(str)  
Console.WriteLine(doc)  

この例を実行すると、次の出力が生成されます。

<!-- comment at the root level -->  
<Root>  
  <Child>Content</Child>  
</Root>  

注釈

このメソッドは空白を保持しません。 XML ツリーの空白を保持する場合は、そのオーバーロードParseLoadOptionsをパラメーターとして使用します。

詳細については、「XML の 読み込みまたは解析中に空白を保持する 」および「 シリアル化中に空白を保持する」を参照してください。

LINQ to XMLの読み込み機能は、XmlReader したがって、オーバーロード メソッドとXmlReader、ドキュメントを読み取って解析するXmlReader.Createメソッドによってスローされる例外をキャッチできます。

こちらもご覧ください

適用対象

Parse(String, LoadOptions)

文字列から新しい XDocument を作成し、必要に応じて、空白の維持、ベース URI の設定、および行情報の保持を行います。

public:
 static System::Xml::Linq::XDocument ^ Parse(System::String ^ text, System::Xml::Linq::LoadOptions options);
public static System.Xml.Linq.XDocument Parse (string text, System.Xml.Linq.LoadOptions options);
static member Parse : string * System.Xml.Linq.LoadOptions -> System.Xml.Linq.XDocument
Public Shared Function Parse (text As String, options As LoadOptions) As XDocument

パラメーター

text
String

XML を格納している文字列。

options
LoadOptions

空白に対する動作、およびベース URI と行情報を読み込むかどうかを指定する LoadOptions

戻り値

XDocument

XML を格納した文字列から設定された XDocument

次の例では、文字列を解析して .XDocument

string str =  
@"<?xml version=""1.0""?>  
<!-- comment at the root level -->  
<Root>  
    <Child>Content</Child>  
</Root>";  
XDocument doc1 = XDocument.Parse(str, LoadOptions.PreserveWhitespace);  
Console.WriteLine("nodes when preserving whitespace: {0}", doc1.DescendantNodes().Count());  
XDocument doc2 = XDocument.Parse(str, LoadOptions.None);  
Console.WriteLine("nodes when not preserving whitespace: {0}", doc2.DescendantNodes().Count());  
Dim str As String = _  
"<?xml version= '1.0'?>" & Environment.NewLine & _  
"<!-- comment at the root level -->" & Environment.NewLine & _  
"<Root>" & Environment.NewLine & _  
"    <Child>Content</Child>"  & Environment.NewLine & _  
"</Root>"  

Dim doc1 As XDocument = XDocument.Parse(str, LoadOptions.PreserveWhitespace)  
Console.WriteLine("nodes when preserving whitespace: {0}", doc1.DescendantNodes().Count())  
Dim doc2 As XDocument = XDocument.Parse(str, LoadOptions.None)  
Console.WriteLine("nodes when not preserving whitespace: {0}", doc2.DescendantNodes().Count())  

この例を実行すると、次の出力が生成されます。

nodes when preserving whitespace: 8  
nodes when not preserving whitespace: 4  

注釈

ソース XML がインデントされている場合、フラグを PreserveWhitespace 設定 options すると、リーダーはソース XML 内のすべての空白を読み取ります。 種類 XText のノードは、重要な空白と重要でない空白の両方に対して作成されます。

ソース XML がインデントされている場合、フラグを PreserveWhitespace 設定しない場合、 options リーダーはソース XML 内の重要でない空白をすべて無視します。 XML ツリーは、重要でない空白のテキスト ノードなしで作成されます。

ソース XML がインデントされていない場合、フラグを PreserveWhitespace 設定 options しても効果はありません。 重要な空白は引き続き保持され、空白文字ノードの作成を引き起こす可能性のある重要でない空白のスパンはありません。

詳細については、「XML の 読み込みまたは解析中に空白を保持する 」および「 シリアル化中に空白を保持する」を参照してください。

から解析するString場合、設定SetBaseUriは無効です。

フラグを設定すると、パフォーマンスが低下します SetLineInfo

行情報は、XML ドキュメントを読み込んだ直後に正確です。 ドキュメントの読み込み後に XML ツリーを変更すると、行情報が意味をなさなくなる可能性があります。

LINQ to XMLの読み込み機能は、XmlReader したがって、オーバーロード メソッドとXmlReader、ドキュメントを読み取って解析するXmlReader.Createメソッドによってスローされる例外をキャッチできます。

こちらもご覧ください

適用対象