XmlWriterSettings.NewLineHandling 屬性

定義

取得或設定值,指出是否要將輸出中的分行符號標準化。

public:
 property System::Xml::NewLineHandling NewLineHandling { System::Xml::NewLineHandling get(); void set(System::Xml::NewLineHandling value); };
public System.Xml.NewLineHandling NewLineHandling { get; set; }
member this.NewLineHandling : System.Xml.NewLineHandling with get, set
Public Property NewLineHandling As NewLineHandling

屬性值

其中一個 NewLineHandling 值。 預設值為 Replace

備註

此設定適用於撰寫文字內容或屬性值時。 以下說明每個 NewLineHandling 值:

  • Entitize 設定會指示 XmlWriter 取代不會透過使用字元實體正規化 XmlReader 來保留的新行字元。 這在正規化 XmlReader來讀取輸出的來回案例中很有用。 自 開始\t\n進行來回時,其他正規化規則適用於屬性值,並在 \r 中正規化XmlReader時,以屬性值中的空格取代。

  • Replace 設定會指示 將 XmlWriter 新的行字元取代為 屬性中 NewLineChars 特定字元 (的字元) 。 此設定也會以字元實體取代屬性中的新行,以保留字元。 這也是預設值。

  • None 設定會 XmlWriter 告知 ,讓輸入保持不變。 當您不想要任何新行處理時,就會使用此設定。 當輸出是由 XmlReader 未執行任何正規化 (的 讀取時很有用, XmlTextReader 例如,具有預設設定的 。)

下表顯示根據屬性設定提供輸入值NewLineHandling時,方法的WriteString輸出。 數據表會顯示寫入文字內容時以及寫入屬性值時的輸出。

Text Node Value:

\r\n \n \r \t
Entitize &#D;\n \n &#D; \t
取代 \r\n \r\n \r\n \t
None \r\n \n \r \t

Attribute Value:

\r\n \n \r \t
Entitize &#D;&#A; &#A; &#D;
取代 &#D;&#A; &#A; &#D;
None \r\n \n \r \t

注意

在 CDATA 區段、批註或處理指令中寫入內容時,具有 XmlWriter 下列行為。 即使 NewLineHandling 屬性設定為 Entitize,新行永遠不會取代為其字元實體。 這是因為 CDATA 區段中無法辨識字元實體、批註或處理指令。 NewLineHandling如果屬性設定為 NoneReplace,則行為與寫入文字節點值時的行為相同。

下表描述每個空格元輸入的正規化 XmlReader 傳回的內容。 如需詳細資訊,請參閱 W3C XML 1.0 建議的 2.11 和 3.3.3 節。

注意

正規化讀取器是由方法所XmlReader.Create建立的任何XmlReader物件。 這些物件一律會執行換行符正規化和屬性的完整正規化。 如果Normalization物件屬性設定true為 ,XmlTextReader則物件也可以是正規化讀取器。

\r\n \n \r \t
文字節點值 \n \n \n \t
屬性值 單一空間 單一空間 單一空間 單一空間

適用於