Share via


Creación de sistemas de escritura XML

Actualización: November 2007

Las instancias de XmlWriter se crean utilizando el método XmlWriter.Create estático.

Las instancias de XmlWriter se crean utilizando el método Create. La clase XmlWriterSettings se utiliza para especificar el conjunto de características que desea habilitar en el nuevo objeto XmlWriter.

Nota importante:

Aunque Microsoft .NET Framework incluye la clase XmlTextWriter, que es una implementación concreta de la clase XmlWriter, en la versión 2.0 de .NET Framework es recomendable crear instancias de XmlWriter utilizando el método Create.

Las características se habilitan o deshabilitan con las propiedades de la clase XmlWriterSettings. Para especificar las características del sistema de escritura que se van a admitir, se pasa un objeto XmlWriterSettings al método Create. Si utiliza el método Create y la clase XmlWriterSettings, se beneficiará de las siguientes ventajas:

  • Puede especificar qué características se van a admitir en el objeto XmlWriter creado.

  • El objeto XmlWriterSettings se puede volver a utilizar para crear varios objetos del sistema de escritura. El objeto XmlWriterSettings se copia y se marca como sólo lectura para cada sistema de escritura que se crea. Los cambios en los valores de una instancia de XmlWriterSettings no afectan a los sistemas de escritura existentes que tienen los mismos valores. Por lo tanto, puede utilizar los mismos valores para crear varios sistemas de escritura con la misma funcionalidad. O bien, puede modificar los valores de una instancia de XmlWriterSettings y crear un nuevo sistema de escritura con un conjunto de características diferente.

  • Puede agregar características a un sistema de escritura existente. El método Create puede aceptar otro objeto XmlWriter. El objeto XmlWriter subyacente no tiene que ser un sistema de escritura creado por el método Create estático. Por ejemplo, puede especificar un sistema de escritura definido por el usuario o un objeto XmlTextWriter al que desea agregar características adicionales.

  • Puede beneficiarse al máximo de todas las nuevas características que se han agregado a la clase XmlWriter en esta versión. Existen determinadas características como, por ejemplo, la mejora de la comprobación del cumplimiento y el cumplimiento de la recomendación 1.0 de XML, que sólo están disponibles en objetos XmlWriter creados por el método Create estático.

Si no se pasa un objeto XmlWriterSettings al método Create, se utilizan los valores predeterminados del sistema de escritura. En la siguiente tabla se enumeran los valores predeterminados de la clase XmlWriterSettings.

Propiedad

Valor inicial

CheckCharacters

true

CloseOutput

false

ConformanceLevel

ConformanceLevel.Document

Encoding

Encoding.UTF8

Indent

false

IndentChars

Dos espacios

NewLineChars

\r\n (retorno de carro, nueva línea)

NewLineHandling

NewHandling.Replace

NewLineOnAttributes

false

OmitXmlDeclaration

false

Ejemplo

En el siguiente ejemplo se crea un XmlWriter cuyo resultado se envía a un archivo XML.

Dim settings As New XmlWriterSettings()
settings.Indent = True
settings.IndentChars = "    "
Using writer As XmlWriter = XmlWriter.Create("books.xml", settings)
  ' Write XML data.
  writer.WriteStartElement("book")
  writer.WriteElementString("price", "19.95")
  writer.WriteEndElement()
  writer.Flush()
End Using
XmlWriterSettings settings = new XmlWriterSettings();
settings.Indent = true;
settings.IndentChars = ("    ");
using (XmlWriter writer = XmlWriter.Create("books.xml", settings)) {
   // Write XML data.
   writer.WriteStartElement("book");
   writer.WriteElementString("price", "19.95");
   writer.WriteEndElement();
   writer.Flush();
}

Vea también

Otros recursos

Documentos y datos XML