將 (LINQ to XML 序列化時保留空白字元)

本文描述如何在序列化 XML 樹狀結構時控制空白字元。

常見的案例是讀取縮排的 XML、建立記憶體中的 XML 樹狀結構,而不含任何空白字元文位元組點 (也就是不保留空白字元) 、對 XML 進行某些作業,然後以縮排儲存 XML。 當您序列化具有格式的 XML 時,只會保留 XML 樹狀結構中的有效空白字元。 這是 LINQ to XML 的預設行為。

其他常見案例為讀取與修改已經過刻意縮排的 XML。 您可能不想用任何方式變更這個縮排。 若要在 LINQ to XML 中這麼做,您可以在載入或剖析 xml 時保留空白字元,並且在序列化 xml 時停用格式設定。

序列化 XML 樹狀結構之方法的空白字元行為

下列 XElementXDocument 類別中的方法會序列化 XML 樹狀結構。 您可以將 XML 樹狀結構序列化至檔案、TextReaderXmlReaderToString 方法會序列化至字串。

如果方法未採用做 SaveOptions 為引數,則此方法將會格式化 (縮排) 序列化的 XML。 在此情況下,會宣告 XML 樹狀結構中的所有有效空白字元。

如果此方法採用 SaveOptions 當做引數,您就可以指定該方法不格式化 (縮排) 序列化的 XML。 在此情況下,會保留 XML 樹狀中的所有空白字元。