方法: XML ファイルにオブジェクト データを書き込む (Visual Basic)

XmlSerializer クラスを使用して、クラスから XML ファイルにオブジェクトを書き込む例を次に示します。

Public Module XMLWrite  
  
    Sub Main()  
        WriteXML()  
    End Sub  
  
    Public Class Book  
        Public Title As String  
    End Class  
  
    Public Sub WriteXML()  
        Dim overview As New Book  
        overview.Title = "Serialization Overview"  
        Dim writer As New System.Xml.Serialization.XmlSerializer(GetType(Book))  
        Dim file As New System.IO.StreamWriter(  
            "c:\temp\SerializationOverview.xml")  
        writer.Serialize(file, overview)  
        file.Close()  
    End Sub  
End Module  

コードのコンパイル

クラスには、パラメーターのないパブリック コンストラクターが必要です。

信頼性の高いプログラミング

次の条件を満たす場合は、例外が発生する可能性があります。

  • シリアル化されるクラスにパブリックなパラメーターなしのコンストラクターがない場合

  • ファイルが存在するものの、読み取り専用の場合 (IOException)

  • パスが長すぎる (PathTooLongException)。

  • ディスクの空き領域がない場合 (IOException)

.NET Framework セキュリティ

次のコード例では、ファイルが存在しない場合は新規にファイルを作成します。 アプリケーションでファイルを作成する必要がある場合、そのアプリケーションにはフォルダーに対する Create アクセスが必要です。 ファイルが既に存在する場合、アプリケーションに必要なのは、より低い権限である Write アクセスだけです。 フォルダーに対して Read アクセスを許可するのではなく、可能な限りアプリケーションの配置時にファイルを作成しておき、1 つのファイルに対してのみ Create アクセスを許可する方が安全です。

関連項目