XmlWriterSettings.NewLineHandling 屬性
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
取得或設定值,指出是否要將輸出中的分行符號標準化。
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如果屬性設定為 None 或 Replace,則行為與寫入文字節點值時的行為相同。
下表描述每個空格元輸入的正規化 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 |
屬性值 | 單一空間 | 單一空間 | 單一空間 | 單一空間 |