J'ai la classe suivante:Lire tableau de chaînes à partir du fichier XML
using System.Collections;
using System.Xml;
using System.Xml.Serialization;
public class Resource
{
[XmlAttribute("name")]
public string m_Name { get; set; }
public string[] ItemDrop;
}
Et ce fichier XML:
<ResourceData>
<Resources>
<Resource name="Iron Ore">
<ItemDrop type="array">
<value>Iron Piece</value>
</ItemDrop>
</Resource>
<Resource name="Tree">
<ItemDrop type="array">
<value>Log</value>
<value>Leaves</value>
<value>Apple</value>
</ItemDrop>
</Resource>
</Resources>
</ResourceData>
Je suis en train de fichier désérialiser et placer ces deux objets de ressources dans le tableau.
Il lit correctement m_Name mais il n'y a rien dans le tableau ItemDrop.
Voici comment je charge les données:
public static ResourceContainer Load(string path)
{
var serializer = new XmlSerializer(typeof(ResourceContainer));
using (var stream = new FileStream(path, FileMode.Open))
{
return serializer.Deserialize(stream) as ResourceContainer;
}
}
Mark avec XmlArray et XmlArrayItem pour spécifier l'intérieur structure. – Igor
Fonctionne bien, merci monsieur! ;) – Roddeck