Exporter (0) Imprimer
Développer tout
Développer Réduire
Cet article a fait l'objet d'une traduction automatique. Déplacez votre pointeur sur les phrases de l'article pour voir la version originale de ce texte. Informations supplémentaires.
Traduction
Source

XmlWriter.WriteProcessingInstruction, méthode

En cas de substitution dans une classe dérivée, écrit une instruction de traitement avec un espace entre le nom et le texte : <?nom texte?>.

Espace de noms :  System.Xml
Assembly :  System.Xml (dans System.Xml.dll)

public abstract void WriteProcessingInstruction(
	string name,
	string text
)

Paramètres

name
Type : System.String
Nom de l'instruction de traitement.
text
Type : System.String
Texte à inclure dans l'instruction de traitement.

ExceptionCondition
ArgumentException

Le texte est à l'origine d'un document XML incorrect.

name est null ou String.Empty.

Cette méthode permet de créer une déclaration XML après l'appel de WriteStartDocument.

InvalidOperationException

Une méthode XmlWriter a été appelée avant la fin d'une opération asynchrone précédente. Dans ce cas, InvalidOperationException est levée avec le message indiquant qu'une opération asynchrone est déjà en cours.

Cette méthode permet d'écrire la déclaration XML (au lieu de WriteStartDocument). Cela peut entraîner une écriture incorrecte de l'attribut d'encodage. Par exemple, le code C# suivant est à l'origine d'un document XML non valide, car le format d'encodage par défaut est UTF-8.

XmlWriter writer = XmlWriter.Create("output.xml");
writer.WriteProcessingInstruction("xml", "version='1.0' encoding='UTF-16'");
writer.WriteStartElement("root");
writer.Close();

Si text est soit null, soit String.Empty, cette méthode écrit un ProcessingInstruction ne contenant aucune donnée, par exemple <?name?>.

Si le texte contient une séquence non valide de "?>", le XmlWriter peut soit lever une ArgumentException (objets XmlTextWriter) soit insérer un espace " ? >" pour éviter d'écrire du XML non valide (objets XmlWriter créés par la méthode Create).

Pour la version asynchrone de la méthode, consultez l'WriteProcessingInstructionAsync.

L'exemple suivant écrit un fichier XML représentant un livre.


using System;
using System.IO;
using System.Xml;

public class Sample {

  private const string filename = "sampledata.xml";

  public static void Main() {

     XmlWriterSettings settings = new XmlWriterSettings();
     settings.Indent = true;
     XmlWriter writer = XmlWriter.Create(filename, settings);

     // Write the Processing Instruction node.
     String PItext="type=\"text/xsl\" href=\"book.xsl\"";
     writer.WriteProcessingInstruction("xml-stylesheet", PItext);

     // Write the DocumentType node.
     writer.WriteDocType("book", null , null, "<!ENTITY h \"hardcover\">");

     // Write a Comment node.
     writer.WriteComment("sample XML");

     // Write the root element.
     writer.WriteStartElement("book");

     // Write the genre attribute.
     writer.WriteAttributeString("genre", "novel");

     // Write the ISBN attribute.
     writer.WriteAttributeString("ISBN", "1-8630-014");

     // Write the title.
     writer.WriteElementString("title", "The Handmaid's Tale");

     // Write the style element.
     writer.WriteStartElement("style");
     writer.WriteEntityRef("h");
     writer.WriteEndElement(); 

     // Write the price.
     writer.WriteElementString("price", "19.95");

     // Write CDATA.
     writer.WriteCData("Prices 15% off!!");

     // Write the close tag for the root element.
     writer.WriteEndElement();

     writer.WriteEndDocument();

     // Write the XML to file and close the writer.
     writer.Flush();
     writer.Close();  
  }

}


.NET Framework

Pris en charge dans : 4.5.2, 4.5.1, 4.5, 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Pris en charge dans : 4, 3.5 SP1

Bibliothèque de classes portable

Pris en charge dans : Bibliothèque de classes portable

.NET pour les applications du Windows Store

Pris en charge dans : Windows 8

.NET pour les applications Windows Phone

Pris en charge dans : Windows Phone 8, Silverlight 8.1

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (rôle principal du serveur non pris en charge), Windows Server 2008 R2 (rôle principal du serveur pris en charge avec SP1 ou version ultérieure ; Itanium non pris en charge)

Le .NET Framework ne prend pas en charge toutes les versions de chaque plateforme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise du .NET Framework.

Ajouts de la communauté

AJOUTER
Afficher:
© 2014 Microsoft