XmlWriterSettings.NewLineHandling 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 um valor que indica se você deseja normalizar quebras de linha na saída.
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
Valor da propriedade
Um dos valores de NewLineHandling. O padrão é Replace.
Comentários
Essa configuração se aplica ao escrever conteúdo de texto ou valores de atributo. Cada um dos NewLineHandling valores é descrito abaixo:
A Entitize configuração informa ao XmlWriter para substituir novos caracteres de linha que não seriam preservados de outra forma por uma normalização XmlReader com entidades de caractere. Isso é útil em cenários de ida e volta em que a saída é lida por um normalizando XmlReader. Regras de normalização adicionais se aplicam a valores de atributo ao arredondar o tropeço desde
\t
e\n
\r
são substituídas por um espaço em valores de atributo quando normalizados em um XmlReader.A Replace configuração informa para XmlWriter substituir novos caracteres de linha pelos caracteres específicos na NewLineChars propriedade . Essa configuração também substitui novas linhas em atributos por entidades de caractere para preservar os caracteres. Também é o valor padrão.
A None configuração informa para XmlWriter deixar a entrada inalterada. Essa configuração é usada quando você não deseja nenhum processamento de nova linha. Isso é útil quando a saída é lida por um XmlReader que não faz nenhuma normalização (por exemplo, uma XmlTextReader com configurações padrão).)
As tabelas a seguir mostram a saída do WriteString método quando fornecido com o valor de entrada, dependendo da configuração da NewLineHandling propriedade. As tabelas mostram a saída ao escrever conteúdo de texto e também ao escrever um valor de atributo.
Text Node Value:
\r\n | \n | \r | \t | |
---|---|---|---|---|
Entitize | &#D;\n | \n | &#D; | \t |
Substitua | \r\n | \r\n | \r\n | \t |
Nenhum | \r\n | \n | \r | \t |
Attribute Value:
\r\n | \n | \r | \t | |
---|---|---|---|---|
Entitize | &#D;&#A; | &#A; | &#D; | |
Substitua | &#D;&#A; | &#A; | &#D; | |
Nenhum | \r\n | \n | \r | \t |
Observação
O XmlWriter tem o comportamento a seguir ao escrever conteúdo em uma seção CDATA, comentário ou instrução de processamento. Novas linhas nunca são substituídas por suas entidades de caractere, mesmo quando a NewLineHandling propriedade é definida Entitizecomo . Isso ocorre porque as entidades de caractere não são reconhecidas em seções, comentários ou instruções de processamento da CDATA. Se a NewLineHandling propriedade for definida None como ou Replace, o comportamento será o mesmo que ao gravar um valor de nó de texto.
A tabela a seguir descreve o que uma normalização XmlReader retorna para cada entrada de espaço em branco. Para obter mais informações, consulte as seções 2.11 e 3.3.3 da Recomendação do W3C XML 1.0.
Observação
Um leitor normalizador é qualquer XmlReader objeto criado pelo XmlReader.Create método . Esses objetos sempre executam a normalização de quebra de linha e a normalização completa dos atributos. O XmlTextReader objeto também pode ser um leitor de normalização se sua Normalization propriedade estiver definida true
como .
\r\n | \n | \r | \t | |
---|---|---|---|---|
Valor do nó de texto | \n | \n | \n | \t |
Valor do atributo | espaço único | espaço único | espaço único | espaço único |