共用方式為


如何:將物件資料寫入 XML 檔案 (C# 和 Visual Basic)

這個範例使用 XmlSerializer 類別,將來自類別的物件寫入 XML 檔案。

範例

這個程式碼範例會定義名為 Book 的類別、建立該類別的執行個體,並使用 XML 序列化,將執行個體寫入 XML 檔。

與此類似的程式碼也可以當做 IntelliSense 程式碼片段使用。 在 [程式碼片段管理員] 中,這個程式碼片段位於 [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
public class XMLWrite
{

   static void Main(string[] args)
    {
        WriteXML();
    }


    public class Book
    {
        public String title; 
    }


    public static void WriteXML()
    {
        Book overview = new Book();
        overview.title = "Serialization Overview";
        System.Xml.Serialization.XmlSerializer writer = 
            new System.Xml.Serialization.XmlSerializer(typeof(Book));

        var path = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments) + "//SerializationOverview.xml";
        System.IO.FileStream file = System.IO.File.Create(path);

        writer.Serialize(file, overview);
        file.Close();
    }
}

編譯程式碼

類別必須具有不含參數的公用建構函式。

穩固程式設計

下列情形可能會造成例外狀況 (Exception):

安全性

如果檔案不存在,這個範例就會建立新檔案。 如果應用程式需要建立檔案,該應用程式就需要資料夾的 Create 權限。 如果檔案已經存在,則應用程式只需要 Write 權限,這是較小的權限。 若有可能,更為安全的做法是在部署期間建立檔案,並且只授與單一檔案的 Read 權限,而不授與資料夾的 Create 權限。

請參閱

工作

如何:讀取 XML 檔案的物件資料 (C# 和 Visual Basic)

參考

StreamWriter

其他資源

序列化 (C# 和 Visual Basic)

序列化 (C# 和 Visual Basic)