Pour ce qui est de récupérer les fichier, pas la peine de passer par du FileInfo, ça n'apporte rien dans ton cas. Plutôt faire
1 2 3 4 5 6 7 8
| foreach(string fileName in System.IO.Directory.GetFiles("...", "test*.xml"))
{
// En fonction du nom du fichier on effectue le traitement qui va bien
if (System.IO.Path.GetFileName(fileName) == "...")
{
}
...
} |
C'est loin d'être compliqué
1 2 3 4
| XmlDocument doc;
...
XmlNode monNoeud = doc.SelectSingleNode("...");
monNoeud.Attributes["MonAttribut"].Value = "..."; |
Ensuite pour ce que tu veux faire, on peut procéder ainsi par exemple
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| // On récupère tous les attributs nommés "value"
// quel que soit leur emplacement dans le fichier XML
// et dont la valeur n'est pas la date du jour
string dateDuJour = DateTime.Now.ToString("yyyyMMdd");
XmlNodeList nodes = doc.SelectNodes("//*[@value!='" + dateDuJour + "']");
foreach(XmlNode node in nodes)
{
// Si le noeud parent de l'attribut satisfait la condition et
// que la valeur de l'attribut ne correspond pas à la date du jour
// on modifie la valeur de l'attribut
if (node.ParentNode.Name.StartsWith("TEST"))
{
// La nouvelle valeur devient la date du jour
node.Value = dateDuJour;
}
} |
A adapter, j'ai fait l'exemple en fonction de ce que j'avais compris
Avec ça et un peu de recherche, tu devrais pouvoir te débrouiller
Partager