Ajouter <?xml version=“1.0” ?> en haut d'un fichier xml après transformation xsl

J'ai réussi à transformer un simple fichier xml avec les données d'un autre fichier xml (modèle excel) à l'aide d'un modèle xsl, c'est ce que mon fichier xsl ressemble:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
  <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
  <xsl:output method="xml" standalone="yes"/>

    <xsl:template match="/">
      <xsl:processing-instruction name="mso-application">
        <xsl:text>progid="Excel.Sheet"</xsl:text>
      </xsl:processing-instruction>
    ...(stuff here)...
    </xsl:template>
  </xsl:stylesheet>

Le fichier xml résultant est écrit correctement, MAIS à l'exception de l', y compris

<?xml version="1.0"?>

en haut du fichier. Comment puis-je obtenir pour apparaître en haut?

Actuellement mon fichier xml résultant commence avec:

<?mso-application progid="Excel.Sheet"?>
...(rest of file)...

Mais ce que j'en ai besoin pour faire est:

<?xml version="1.0"?>
<?mso-application progid="Excel.Sheet"?>
.(rest of file)...

Je suis en train de faire cette transformation par le biais d'un formulaire windows avec le code suivant:

XPathDocument myXPathDoc = new XPathDocument(xmlfile);
XslCompiledTransform myXslTrans = new XslCompiledTransform();
myXslTrans.Load(xslfile);
XmlTextWriter myWriter = new XmlTextWriter(xmlexcelfile, null);
myWriter.Formatting = Formatting.Indented;
myWriter.Namespaces = true;
myXslTrans.Transform(myXPathDoc, null, myWriter);
myWriter.Close();

J'ai essayé de jouer avec les xsl:output standalone="yes/no", ainsi que omit-xml-declaration="no". J'ai aussi essayé (en C#) code de l'ajout de myWriter.WriteStartDocument(); avant de se transformer, mais qui n'a pas été autorisé. J'ai essayé de chercher en ligne pour cela et de revenir à la standalone="yes" mais qui ne fonctionne pas. Est-il quelque chose qui me manque ici? Oh, et au cas où vous vous demandez pourquoi j'ai besoin d'avoir

<?xml version="1.0"?>

en haut du fichier, c'est parce que lors de l'ouverture du fichier xml avec excel, excel ne reconnaît pas correctement, mais si elle est comprise, excel s'ouvre correctement...

OriginalL'auteur oUJi | 2012-05-02

Leave a Reply

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *