次の方法で共有


XmlSerializer コンストラクタ (Type, String)

指定した型のオブジェクトを XML ドキュメントにシリアル化したり、XML ドキュメントを指定した型のオブジェクトに逆シリアル化したりできる、XmlSerializer クラスの新しいインスタンスを初期化します。すべての XML 要素の既定の名前空間を指定します。

名前空間: System.Xml.Serialization
アセンブリ: System.Xml (system.xml.dll 内)

構文

'宣言
Public Sub New ( _
    type As Type, _
    defaultNamespace As String _
)
'使用
Dim type As Type
Dim defaultNamespace As String

Dim instance As New XmlSerializer(type, defaultNamespace)
public XmlSerializer (
    Type type,
    string defaultNamespace
)
public:
XmlSerializer (
    Type^ type, 
    String^ defaultNamespace
)
public XmlSerializer (
    Type type, 
    String defaultNamespace
)
public function XmlSerializer (
    type : Type, 
    defaultNamespace : String
)

パラメータ

  • type
    XmlSerializer がシリアル化できるオブジェクトの型。
  • defaultNamespace
    すべての XML 要素で使用する既定の名前空間。

使用例

Widget という名前のシンプルなオブジェクトをシリアル化する XmlSerializer の構築例を次に示します。この例では、オブジェクトの各種プロパティを設定してから Serialize メソッドを呼び出します。

Private Sub SerializeObject(ByVal filename As String)
    Dim serializer As New XmlSerializer(GetType(OrderedItem), _
                                          "http://www.cpandl.com")
    
    ' Create an instance of the class to be serialized.
    Dim i As New OrderedItem()
    
    ' Insert code to set property values.
    ' Writing the document requires a TextWriter.
    Dim writer As New StreamWriter(filename)
    ' Serialize the object, and close the TextWriter.
    serializer.Serialize(writer, i)
    writer.Close()
End Sub


Private Sub DeserializeObject(ByVal filename As String)
    Dim serializer As New XmlSerializer(GetType(OrderedItem), _
                                          "http://www.cpandl.com")
    ' A FileStream is needed to read the XML document.
    Dim fs As New FileStream(filename, FileMode.Open)
    
    ' Declare an object variable of the type to be deserialized.
    Dim i As OrderedItem
    
    ' Deserialize the object.
    i = CType(serializer.Deserialize(fs), OrderedItem)
    ' Insert code to use the properties and methods of the object.
End Sub
     
private void SerializeObject(string filename) {
    XmlSerializer serializer = new XmlSerializer
        (typeof(OrderedItem), "http://www.cpandl.com");
     
    // Create an instance of the class to be serialized.
    OrderedItem i = new OrderedItem();
     
    // Insert code to set property values.
     
    // Writing the document requires a TextWriter.
    TextWriter writer = new StreamWriter(filename);
    // Serialize the object, and close the TextWriter
    serializer.Serialize(writer, i);
    writer.Close();
}
 
private void DeserializeObject(string filename) {
    XmlSerializer serializer = new XmlSerializer
        (typeof(OrderedItem), "http://www.cpandl.com");
    // A FileStream is needed to read the XML document.
    FileStream fs = new FileStream(filename, FileMode.Open);
     
    // Declare an object variable of the type to be deserialized.
    OrderedItem i;
     
    // Deserialize the object.
    i = (OrderedItem) serializer.Deserialize(fs);
     
    // Insert code to use the properties and methods of the object.
}
private:
   void SerializeObject( String^ filename )
   {
      XmlSerializer^ serializer = gcnew XmlSerializer(
         OrderedItem::typeid,"http://www.cpandl.com" );

      // Create an instance of the class to be serialized.
      OrderedItem^ i = gcnew OrderedItem;

      // Insert code to set property values.

      // Writing the document requires a TextWriter.
      TextWriter^ writer = gcnew StreamWriter( filename );
      // Serialize the object, and close the TextWriter
      serializer->Serialize( writer, i );
      writer->Close();
   }

   void DeserializeObject( String^ filename )
   {
      XmlSerializer^ serializer = gcnew XmlSerializer(
         OrderedItem::typeid,"http://www.cpandl.com" );
      // A FileStream is needed to read the XML document.
      FileStream^ fs = gcnew FileStream( filename,FileMode::Open );

      // Declare an object variable of the type to be deserialized.
      OrderedItem^ i;

      // Deserialize the object.
      i = dynamic_cast<OrderedItem^>(serializer->Deserialize( fs ));

      // Insert code to use the properties and methods of the object.
   }
private void SerializeObject(String filename)
{
    XmlSerializer serializer =
        new XmlSerializer(OrderedItem.class.ToType(),
        "http://www.cpandl.com");

    // Create an instance of the class to be serialized.
    OrderedItem i = new OrderedItem();

    // Insert code to set property values.
    // Writing the document requires a TextWriter.
    TextWriter writer = new StreamWriter(filename);

    // Serialize the object, and close the TextWriter
    serializer.Serialize(writer, i);
    writer.Close();
} //SerializeObject

private void DeserializeObject(String filename)
{
    XmlSerializer serializer =
        new XmlSerializer(OrderedItem.class.ToType(),
        "http://www.cpandl.com");

    // A FileStream is needed to read the XML document.
    FileStream fs = new FileStream(filename, FileMode.Open);

    // Declare an object variable of the type to be deserialized.
    OrderedItem i;

    // Deserialize the object.
    i = (OrderedItem)serializer.Deserialize(fs);
    // Insert code to use the properties and methods of the object.
} //DeserializeObject    

プラットフォーム

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。

バージョン情報

.NET Framework

サポート対象 : 2.0、1.1、1.0

.NET Compact Framework

サポート対象 : 2.0

参照

関連項目

XmlSerializer クラス
XmlSerializer メンバ
System.Xml.Serialization 名前空間
XmlAttributes クラス

その他の技術情報

XML シリアル化の概要
方法 : XML ストリームの代替要素名を指定する
属性を使用した XML シリアル化の制御
XML シリアル化の例
XML スキーマ定義ツール (Xsd.exe)