XmlWriterSettings.NewLineHandling Propiedad
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Obtiene o establece un valor que indica si se deben normalizar los saltos de línea en el resultado.
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 de propiedad
Uno de los valores de NewLineHandling. De manera predeterminada, es Replace.
Comentarios
Esta configuración se aplica al escribir valores de atributo o contenido de texto. A continuación se describe cada uno de los NewLineHandling valores:
La Entitize configuración indica a que XmlWriter reemplace los nuevos caracteres de línea que, de lo contrario, no se conservarían mediante una normalización XmlReader con entidades de caracteres. Esto resulta útil en escenarios de ida y vuelta en los que un normalizador XmlReaderlee la salida. Las reglas de normalización adicionales se aplican a los valores de atributo al realizar un recorrido de ida y vuelta desde
\t
y\n
\r
se reemplazan por un espacio en los valores de atributo cuando se normalizan en .XmlReaderLa Replace configuración indica a que XmlWriter reemplace nuevos caracteres de línea por los caracteres específicos de la NewLineChars propiedad . Esta configuración también reemplaza nuevas líneas en atributos por entidades de caracteres para conservar los caracteres. También es el valor predeterminado.
El None valor indica a que XmlWriter deje la entrada sin cambios. Esta configuración se usa cuando no desea ningún procesamiento de nueva línea. Esto resulta útil cuando el resultado lo lee un XmlReader que no realiza ninguna normalización (por ejemplo, un XmlTextReader con la configuración predeterminada).
En las tablas siguientes se muestra la salida del WriteString método cuando se proporciona con el valor de entrada en función del valor de la NewLineHandling propiedad. Las tablas muestran la salida al escribir contenido de texto y también al escribir un valor de atributo.
Text Node Value:
\r\n | \n | \r | \t | |
---|---|---|---|---|
Entitize | &#D;\n | \n | &#D; | \t |
Replace | \r\n | \r\n | \r\n | \t |
Ninguno | \r\n | \n | \r | \t |
Attribute Value:
\r\n | \n | \r | \t | |
---|---|---|---|---|
Entitize | &#D;&#A; | &#A; | &#D; | |
Replace | &#D;&#A; | &#A; | &#D; | |
Ninguno | \r\n | \n | \r | \t |
Nota:
XmlWriter Tiene el siguiente comportamiento al escribir contenido en una sección de CDATA, un comentario o una instrucción de procesamiento. Las nuevas líneas nunca se reemplazan por sus entidades de caracteres, incluso cuando la NewLineHandling propiedad está establecida Entitizeen . Esto se debe a que las entidades de caracteres no se reconocen en secciones CDATA, comentarios o instrucciones de procesamiento. Si la NewLineHandling propiedad se establece None en o Replace, el comportamiento es el mismo que al escribir un valor de nodo de texto.
En la tabla siguiente se describe lo que devuelve un normalización XmlReader para cada entrada de espacio en blanco. Para obtener más información, vea las secciones 2.11 y 3.3.3 de la recomendación W3C XML 1.0.
Nota
Un lector de normalización es cualquier XmlReader objeto creado por el XmlReader.Create método . Estos objetos siempre realizan la normalización de saltos de línea y la normalización completa de los atributos. El XmlTextReader objeto también puede ser un lector de normalización si su Normalization propiedad está establecida en true
.
\r\n | \n | \r | \t | |
---|---|---|---|---|
Valor del nodo de texto | \n | \n | \n | \t |
Valor del atributo | espacio único | espacio único | espacio único | espacio único |