Compartilhar via


XmlWriterSettings.Encoding Propriedade

Definição

Obtém ou define o tipo de codificação de texto a usar.

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

Valor da propriedade

A codificação de texto a ser usada. O padrão é Encoding.UTF8.

Exemplos

O exemplo a seguir mostra como definir a Encoding propriedade :

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)

Comentários

O XmlWriter codifica um buffer de caracteres de uma só vez, em vez de caractere por caractere. Uma exceção é gerada quando o Flush método é chamado se algum erro de codificação for encontrado.

A Encoding propriedade só se aplica às XmlWriter instâncias que são criadas com o especificado Stream ou com o nome de arquivo especificado. Se a XmlWriter instância for criada com o especificado TextWriter, a Encoding propriedade será substituída pela codificação do subjacente TextWriter. Por exemplo, se essa propriedade for definida como Unicode (UTF-16) para um determinado XmlWriter, mas o gravador subjacente for um StreamWriter (que deriva de TextWriter) com sua codificação definida como UTF8, a saída será codificada em UTF-8.

Se a XmlWriter instância for criada com outros parâmetros de saída, a Encoding propriedade será ignorada.

No exemplo a seguir:

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();
    }
}

Importante

Não aceite um Encoding objeto de uma fonte não confiável.

Aplica-se a