XmlWriterSettings.Encoding Propriedade
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
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:
O valor padrão de Encoding é
Encoding.UTF8
.O StreamWriter é definido como
Encoding.Unicode
e a StreamWritercodificação do substitui a Encoding configuração.A saída será
Encoding.Unicode
.
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.