2009-12-10 10 views
1

J'écris un fichier xml pour être consommé par Excel.C# ecrire le fichier excel en tant que xml

Excel veut que ce soit:

<Cell><Data ss:Type="Number">25</Data></Cell> 

J'écris ceci ...

<Cell> 
    <Data ss:Type="Number">25</Data> 
</Cell> 

je reçois qu'Excel est difficile, mais depuis que je suis en utilisant XElelments, comment puis-je contrôler la formatage de la sortie?

Voici mon code pour écrire une cellule.

foreach(var propertyInfo in fi) 
       { 

        XElement oneCell = new XElement(root + "Cell", 
              new XElement(root + "Data", 
                new XAttribute(ss + "Type", "String"), propertyInfo.GetValue(cv, null) 
              ) 
             ); 
        oneRow.Add(oneCell); 

       } 

Comment puis-je obtenir cela pour sortir la cellule et les données sur la même ligne?

Merci,

Cal-

+1

Est-ce que Excel est vraiment si difficile? lol –

+0

Il s'avère que l'article de blog que je lisais était erroné à propos d'Excel étant si pointilleux. L'erreur a été provoquée par une erreur tag, pas le formatage. –

Répondre

1

Regardez ceci: XElement.Save Method

Si vous souhaitez enregistrer XML dentelée, ne spécifie pas le drapeau DisableFormatting pour les options. Cela supprimera tout espace blanc insignifiant et ajoutera un espace blanc insignifiant approprié afin que le XML soit correctement mis en retrait. C'est le comportement par défaut et le comportement des surcharges des méthodes Save qui ne prennent pas les options en paramètre. Pour plus d'informations, voir Preserving White Space while Loading ou Parsing XML and Preserving White Space While Serializing.

Questions connexes