方法: オブジェクトを逆シリアル化するHow to: Deserialize an Object

オブジェクトを逆シリアル化する場合、転送形式によって、ストリーム オブジェクトとファイル オブジェクトのどちらを作成するかが決定されます。When you deserialize an object, the transport format determines whether you will create a stream or file object. 転送形式を決定したら、必要に応じて Serialize メソッドまたは Deserialize メソッドを呼び出すことができます。After the transport format is determined, you can call the Serialize or Deserialize methods, as required.

オブジェクトを逆シリアル化するにはTo deserialize an object

  1. 逆シリアル化するオブジェクトの型を使用して、XmlSerializer を構築します。Construct a XmlSerializer using the type of the object to deserialize.

  2. Deserialize メソッドを呼び出して、オブジェクトのレプリカを生成します。Call the Deserialize method to produce a replica of the object. 逆シリアル化するときに (ただし、ストリームからして逆シリアル化こともできます)、ファイルからオブジェクトを逆シリアル化する次の例で示すように、元の型に返されるオブジェクトをキャストする必要があります。When deserializing, you must cast the returned object to the type of the original, as shown in the following example, which deserializes the object from a file (although it could also be deserialized from a stream).

    Dim myObject As MySerializableClass  
    ' Construct an instance of the XmlSerializer with the type  
    ' of object that is being deserialized.  
    Dim mySerializer As XmlSerializer = New XmlSerializer(GetType(MySerializableClass))  
    ' To read the file, create a FileStream.  
    Dim myFileStream As FileStream = _  
    New FileStream("myFileName.xml", FileMode.Open)  
    ' Call the Deserialize method and cast to the object type.  
    myObject = CType( _  
    mySerializer.Deserialize(myFileStream), MySerializableClass)  
    
    MySerializableClass myObject;  
    // Construct an instance of the XmlSerializer with the type  
    // of object that is being deserialized.  
    XmlSerializer mySerializer =   
    new XmlSerializer(typeof(MySerializableClass));  
    // To read the file, create a FileStream.  
    FileStream myFileStream =   
    new FileStream("myFileName.xml", FileMode.Open);  
    // Call the Deserialize method and cast to the object type.  
    myObject = (MySerializableClass)   
    mySerializer.Deserialize(myFileStream)  
    

関連項目See also