次の方法で共有


XmlDocument.CreateXmlDeclaration メソッド

指定した値を使用して、 XmlDeclaration ノードを作成します。

Public Overridable Function CreateXmlDeclaration( _
   ByVal version As String, _   ByVal encoding As String, _   ByVal standalone As String _) As XmlDeclaration
[C#]
public virtual XmlDeclaration CreateXmlDeclaration(stringversion,stringencoding,stringstandalone);
[C++]
public: virtual XmlDeclaration* CreateXmlDeclaration(String* version,String* encoding,String* standalone);
[JScript]
public function CreateXmlDeclaration(
   version : String,encoding : String,standalone : String) : XmlDeclaration;

パラメータ

  • version
    バージョンは "1.0" にする必要があります。

  • encoding
    エンコーディング属性の値。これは、 XmlDocument をファイルまたはストリームに保存するときに使用するエンコーディングです。したがって、 Encoding クラスでサポートされる文字列に設定する必要があります。それ以外の場合、 Save は失敗します。この値が null 参照 (Visual Basic では Nothing) または String.Empty の場合は、Save メソッドが XML 宣言にエンコーディング属性を書き込まないため、既定のエンコーディング UTF-8 が使用されます。

    メモ : XmlDocumentTextWriter または XmlTextWriter に保存される場合、このエンコーディング値は破棄されます。代わりに、 TextWriter または XmlTextWriter のエンコーディングが使用されます。これにより、正しいエンコーディングを使用して、書き込まれた XML を読み戻すことができます。

  • standalone
    この値は、"yes" または "no" のいずれかにする必要があります。この値が null 参照 (Visual Basic では Nothing) または String.Empty の場合、Save メソッドは XML 宣言にスタンドアロン属性を書き込みません。

戻り値

新しい XmlDeclaration ノード。

例外

例外の種類 条件
ArgumentException version または standalone の値が、上記の値以外です。

解説

属性は、 XmlAttribute ノードとしてではなく、 XmlDeclaration ノード上の特殊なプロパティとして公開されます。

このメソッドは、ドキュメントのコンテキスト内で新しいオブジェクトを作成しますが、自動的には新しいオブジェクトをドキュメント ツリーに追加しません。新しいオブジェクトを追加するには、ノード挿入メソッドのいずれか 1 つを明示的に呼び出す必要があります。W3C 勧告『Extensible Markup Language (XML) 1.0』(www.w3.org/TR/1998/REC-xml-19980210) に従って、 XmlDeclaration ノードは、ドキュメントの最初のノードにする必要があります。

このメソッドは、DOM (Document Object Model) に対する Microsoft 拡張機能です。

使用例

[Visual Basic, C#, C++] XML 宣言を作成し、ドキュメントに追加する例を次に示します。

 
Option Explicit
Option Strict

Imports System
Imports System.IO
Imports System.Xml

Public Class Sample
    
    Public Shared Sub Main()
        Dim doc As New XmlDocument()
        doc.LoadXml("<book genre='novel' ISBN='1-861001-57-5'>" & _
                    "<title>Pride And Prejudice</title>" & _
                    "</book>")
        
        'Create an XML declaration. 
        Dim xmldecl As XmlDeclaration
        xmldecl = doc.CreateXmlDeclaration("1.0", Nothing, Nothing)
        
        'Add the new node to the document.
        Dim root As XmlElement = doc.DocumentElement
        doc.InsertBefore(xmldecl, root)
        
        Console.WriteLine("Display the modified XML...")
        doc.Save(Console.Out)
    End Sub 'Main
End Class 'Sample

[C#] 
using System;
using System.IO;
using System.Xml;

public class Sample
{
  public static void Main()
  {
    XmlDocument doc = new XmlDocument();
    doc.LoadXml("<book genre='novel' ISBN='1-861001-57-5'>" +
                "<title>Pride And Prejudice</title>" +
                "</book>");

    //Create an XML declaration. 
    XmlDeclaration xmldecl;
    xmldecl = doc.CreateXmlDeclaration("1.0",null,null);

    //Add the new node to the document.
    XmlElement root = doc.DocumentElement;
    doc.InsertBefore(xmldecl, root);
        
    Console.WriteLine("Display the modified XML...");        
    doc.Save(Console.Out);
  }
}

[C++] 
#using <mscorlib.dll>
#using <System.Xml.dll>
using namespace System;
using namespace System::IO;
using namespace System::Xml;

int main()
{
    XmlDocument* doc = new XmlDocument();
    doc->LoadXml(S"<book genre='novel' ISBN='1-861001-57-5'><title>Pride And Prejudice</title></book>");

    //Create an XML declaration. 
    XmlDeclaration* xmldecl;
    xmldecl = doc->CreateXmlDeclaration(S"1.0",0,0);

    //Add the new node to the document.
    XmlElement* root = doc->DocumentElement;
    doc->InsertBefore(xmldecl, root);
        
    Console::WriteLine(S"Display the modified XML...");        
    doc->Save(Console::Out);
}

[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン 言語のフィルタ をクリックします。

必要条件

プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ, .NET Compact Framework - Windows CE .NET

参照

XmlDocument クラス | XmlDocument メンバ | System.Xml 名前空間 | XmlDeclaration