XmlWriterSettings.Encoding 屬性

定義

取得或設定要使用的文字編碼方式類型。

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

屬性值

Encoding

要使用的文字編碼方式。 預設為 Encoding.UTF8

範例

下列範例示範如何設定 Encoding 屬性:

XmlWriterSettings settings = new XmlWriterSettings();
settings.Indent = true;
settings.Encoding = Encoding.Unicode;
XmlWriter writer = XmlWriter.Create("books.xml", settings);
Dim settings As New XmlWriterSettings()
settings.Indent = True
settings.Encoding = Encoding.Unicode
Dim writer As XmlWriter = XmlWriter.Create("books.xml", settings)

備註

XmlWriter 一次編碼字元的緩衝區,而不是依字元編碼。 如果遇到任何編碼錯誤, Flush 則會在呼叫 方法時擲回例外狀況。

屬性 Encoding 只適用于 XmlWriter 使用指定 Stream 或具有指定檔案名所建立的實例。 XmlWriter如果實例是以指定的 TextWriter 建立,則 Encoding 屬性會由基礎 TextWriter 的編碼覆寫。 例如,如果此屬性設定為 Unicode (特定 的 UTF-16) XmlWriter ,但基礎寫入器是 StreamWriter 衍生自 TextWriter) 且其編碼方式設定為 UTF8 的 (,輸出將會經過 UTF-8 編碼。

如果實例是以其他輸出參數建立, XmlWriter 則會 Encoding 忽略 屬性。

在下例中︰

using (StreamWriter output =
    new StreamWriter(new FileStream("Xml01.xml", FileMode.Create), Encoding.Unicode))
{
    using (XmlWriter xmlWriter =
        XmlWriter.Create(output, new XmlWriterSettings()))
    {
        xmlWriter.WriteStartDocument();
        xmlWriter.WriteStartElement("Root");
        xmlWriter.WriteEndElement();
        xmlWriter.WriteEndDocument();
    }
}

重要

不接受 Encoding 來自不受信任來源的物件。

適用於