Récupérer donnée XML - Arduino

Résolu/Fermé
MaisClement Messages postés 5 Date d'inscription mardi 14 mai 2019 Statut Membre Dernière intervention 29 janvier 2020 - 29 janv. 2020 à 16:32
MaisClement Messages postés 5 Date d'inscription mardi 14 mai 2019 Statut Membre Dernière intervention 29 janvier 2020 - 29 janv. 2020 à 22:46
Bonjour,

Je me suis lancé sur un projet Arduino devant affiché les prochain départ de trains a une gare. Malgré mon faible niveau en programmation j'arrive a faire une requête, la recevoir et a gérer l'affichage. Mais je n'arrive pas a extraire les données du XML que je reçoit.

Voici ce que je reçoit :
<?xml version="1.0" encoding="UTF-8"?>
<passages gare="87545269">

<train><date mode="R">28/11/2019 08:06</date>
<num>142670</num>
<miss>VITY</miss>
<term>87393157</term>
</train>

<train><date mode="R">28/11/2019 08:10</date>
<num>141661</num>
<miss>CIME</miss>
<term>87393009</term>
</train>

<train><date mode="R">28/11/2019 08:19</date>
<num>142672</num>
<miss>VITY</miss>
<term>87393157</term>
</train>

<train><date mode="R">28/11/2019 08:23</date>
<num>141663</num>
<miss>CIME</miss>
<term>87393009</term>
</train>


Et je souhaite extraire le terminus : <term>87393009</term> et l'heure.

Merci d'avance
A voir également:

3 réponses

[Dal] Messages postés 6194 Date d'inscription mercredi 15 septembre 2004 Statut Contributeur Dernière intervention 11 octobre 2024 1 092
Modifié le 29 janv. 2020 à 17:10
Salut MaisClement,

Pour parser un fichier xml en C, si tu n'as pas à ta disposition une bibliothèque xml, ou une bibliothèque de gestion des regexp, tu peux faire avec les moyens du bord en utilisant la fonction C standard
strstr()
accessible par l'entête standard
string.h
sur une chaîne C, pour chercher le pointeur vers la première occurrence d'une sous-chaîne.

A partir de là, tu peux isoler les parties de la chaîne qui t'intéressent et extraire ce qu'il te faut.

En ce qui concerne ta demande particulière, sur l'exemple de données que tu postes, je ne comprends pas ce que tu veux extraire (ta sortie) et au moyen de quelle information de départ (ton input).

Dal
1
MaisClement Messages postés 5 Date d'inscription mardi 14 mai 2019 Statut Membre Dernière intervention 29 janvier 2020
29 janv. 2020 à 19:58
Salut Dal,

Je vais essayer d’être plus clair,
Je reçoit via une api un XML (mon input) contant des information pour 4 trains, ce que j'ai joint précédemment.
Quant a ce que je veut extraire c'est le code gare qui est contenu entre les bornes "term" exemple : 87393157, ainsi que l'heure pour chaque train.

MaisClément
0
MaisClement Messages postés 5 Date d'inscription mardi 14 mai 2019 Statut Membre Dernière intervention 29 janvier 2020
29 janv. 2020 à 22:46
Avec votre aide, j'ai tout de mème réussi à trouvé quelque chose pour m'aiguiller, ca semble en bonne voie. Merci beaucoup

MaisClément
0