Condividi tramite


Creazione di writer XML

Le istanze di XmlWriter vengono create utilizzando il metodo statico XmlWriter.Create.

Le istanze di XmlWriter vengono create utilizzando il metodo Create. La classe XmlWriterSettings consente di specificare il set di funzionalità da abilitare per il nuovo oggetto XmlWriter.

Nota importanteImportante

Sebbene in Microsoft .NET Framework sia inclusa la classe XmlTextWriter, che è un'implementazione concreta della classe XmlWriter, nella versione 2.0 di .NET Framework è consigliabile creare istanze di XmlWriter utilizzando il metodo Create.

Le funzionalità vengono abilitate o disabilitate mediante le proprietà nella classe XmlWriterSettings. Per specificare le funzionalità del writer da supportare è necessario passare un oggetto XmlWriterSettings al metodo Create. Tramite il metodo Create e la classe XmlWriterSettings si possono ottenere i seguenti vantaggi:

  • È possibile specificare le funzionalità da supportare nell'oggetto XmlWriter creato.

  • È possibile riutilizzare l'oggetto XmlWriterSettings per creare più oggetti writer. L'oggetto XmlWriterSettings viene copiato e contrassegnato in sola lettura per ogni writer creato. Le modifiche alle impostazioni in un'istanza di XmlWriterSettings non influenzano i writer esistenti con le stesse impostazioni. In tal modo è possibile utilizzare le stesse impostazioni per creare più writer con la stessa funzionalità. Oppure è possibile modificare le impostazioni in un'istanza di XmlWriterSettings e creare un nuovo writer con un set di funzionalità diverso.

  • È possibile aggiungere funzionalità a un writer esistente. Il metodo Create può accettare un altro oggetto XmlWriter. Non è necessario che l'oggetto XmlWriter sottostante sia un writer creato utilizzando il metodo statico Create. Ad esempio, è possibile specificare un writer definito dall'utente o un oggetto XmlTextWriter a cui potranno essere aggiunte ulteriori funzionalità.

  • È possibile sfruttare al massimo tutte le nuove funzionalità aggiunte alla classe XmlWriter in questa versione. Alcune funzionalità, quali un miglior controllo della conformità e la conformità alla raccomandazione XML 1.0, sono disponibili solo per oggetti XmlWriter creati mediante il metodo statico Create.

Se un oggetto XmlWriterSettings non viene passato al metodo Create, verranno utilizzate le impostazioni predefinite del writer. Nella seguente tabella sono elencate le impostazioni predefinite nella classe XmlWriterSettings.

Proprietà

Valore iniziale

CheckCharacters

true

CloseOutput

false

ConformanceLevel

ConformanceLevel.Document

Encoding

Encoding.UTF8

Indent

false

IndentChars

Due spazi

NewLineChars

\r\n (ritorno a capo, avanzamento riga)

NewLineHandling

NewHandling.Replace

NewLineOnAttributes

false

OmitXmlDeclaration

false

Esempio

Nell'esempio seguente viene creato un oggetto XmlWriter che invia un output a un file 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();
}

Vedere anche

Altre risorse

Documenti e dati XML