|
FORUMS PROFESSIONNELS WINDEV, WEBDEV et WINDEV Mobile |
| | | | | |
[WM17] problème lecture fichier XML ... |
Débuté par DOYEN Florian, 06 mar. 2012 11:00 - 10 réponses |
| |
| | | |
|
| |
Posté le 06 mars 2012 - 11:00 |
Bonjour,
j'ai actuellement un soucis. Je voudrais modifier un libellé (ou le texte d'un bouton, n'importe, c'est pour 'tester' ). pour cela, je lis dans un fichier XML. Quand on arrive à la fin du fichier, on sort de la boucle... Mais rien ne change, comme s'il ne rentrait pas dans la boucle. J'ai pris cet exemple dans la doc ...
MonDoc est une chaîne MonDoc = fChargeTexte("exemple.xml") MonRésultat est une chaîne i est un entier = 1 MonRésultat = XMLExtraitChaîne(MonDoc , "text", i) TANTQUE MonRésultat<>"" BTN_test = "bouton" i = i+1 MonRésultat = XMLVersTexte(XMLExtraitChaîne(MonDoc , "text", i)) FIN
il faut que je mette BTN_test = "bouton" en dehors de la boucle pour que ça marche ...
Voici mon fichier exemple.xml
<?xml version="1.0"?> <text>Ce document respecte la spécification XML 1.0.</text>
Je sais, c'est "basique" mais j'ai beau testé avec de vrais gros fichiers xml ça change rien ...
Je voudrais en fait, afficher le contenu du fichier XML dans un champ "libellé" que j'ai créer. En modifiant donc le texte de ce libellé par le contenu du XML (je souhaite faire un affichage de news dans le libellé... J'ai pas trouvé mieux actuellement !) |
| |
| |
| | | |
|
| | |
| |
Posté le 06 mars 2012 - 15:41 |
DOYEN Florian a pensé très fort :
Bonjour,
j'ai actuellement un soucis. Je voudrais modifier un libellé (ou le texte d'un bouton, n'importe, c'est pour 'tester' ). pour cela, je lis dans un fichier XML. Quand on arrive à la fin du fichier, on sort de la boucle... Mais rien ne change, comme s'il ne rentrait pas dans la boucle. J'ai pris cet exemple dans la doc ...
MonDoc est une chaîne MonDoc = fChargeTexte("exemple.xml") MonRésultat est une chaîne i est un entier = 1 MonRésultat = XMLExtraitChaîne(MonDoc , "text", i) TANTQUE MonRésultat<>"" BTN_test = "bouton" i = i+1 MonRésultat = XMLVersTexte(XMLExtraitChaîne(MonDoc , "text", i)) FIN
il faut que je mette BTN_test = "bouton" en dehors de la boucle pour que ça marche ...
Voici mon fichier exemple.xml
<?xml version="1.0"?> <text>Ce document respecte la spécification XML 1.0.</text>
Je sais, c'est "basique" mais j'ai beau testé avec de vrais gros fichiers xml ça change rien ...
Je voudrais en fait, afficher le contenu du fichier XML dans un champ "libellé" que j'ai créer. En modifiant donc le texte de ce libellé par le contenu du XML (je souhaite faire un affichage de news dans le libellé... J'ai pas trouvé mieux actuellement !)
http://doc.pcsoft.fr/fr-FR/?3038004&name=multitacherepeint-fonction
-- Cordialement JeAn-PhI |
| |
| |
| | | |
|
| | |
| |
Posté le 06 mars 2012 - 16:25 |
hm... pardonnez moi mais... Je ne comprends pas très bien en quoi cela va m'aider ... =S |
| |
| |
| | | |
|
| | |
| |
Posté le 06 mars 2012 - 17:46 |
DOYEN Florian a exprimé avec précision :
hm... pardonnez moi mais... Je ne comprends pas très bien en quoi cela va m'aider ... =S
cette fonction permet de : Re-dessine immédiatement les champs de la fenêtre nécessitant une mise à jour graphique, ce qui me semble répond à votre problématique
-- Cordialement JeAn-PhI |
| |
| |
| | | |
|
| | |
| |
Posté le 07 mars 2012 - 12:17 |
A vrai dire, ce que je ne comprends pas, c'est pourquoi le code fournis en exemple ne fonctionne pas ... |
| |
| |
| | | |
|
| | |
| |
Posté le 07 mars 2012 - 15:16 |
DOYEN Florian a couché sur son écran :
A vrai dire, ce que je ne comprends pas, c'est pourquoi le code fournis en exemple ne fonctionne pas ...
peut être parce vous êtes en v17 et qu'il existe encore qq soucis ou parce que la gestion du rafraichissement en version mobile est différente de windows
-- Cordialement JeAn-PhI |
| |
| |
| | | |
|
| | |
| |
Posté le 07 mars 2012 - 15:39 |
Je viens de cerner le problème, il apparaît que la variable "MonRésultat" reste nulle, alors qu'elle devrait contenir le contenu compris entre les balises text et /text de mon fichier XML...
Mon problème maintenant est : mon fichier XML est-il au bon endroit ?
Ou dois-je le placer ? on dirait qu'il n'ouvre pas le fichier, et que donc la chaîne reste vide ... |
| |
| |
| | | |
|
| | |
| |
Posté le 08 mars 2012 - 10:05 |
http://doc.pcsoft.fr/fr-FR/?1000003081025&name=xmlrecherche-exemple
la tu as un code complet pour parcourir un xml avec les balises que tu recherches
ce qui donnerai dans ton cas quelque chose comme
DocXML est une chaîne="XML" InfoXML est une chaîne
InfoXML = fChargeTexte(ComplèteRep(fRepExe())+"exemple.xml")
XMLDocument(DocXML,InfoXML)
XMLRacine(DocXML)
BOUCLE
XMLRecherche(DocXML,"test",XMLElement+XMLContinue) SI XMLTrouve(DocXML)=Faux ALORS SORTIR
XMLPremier(DocXML) TANTQUE XMLEnDehors(DocXML)=Faux
Ton_libelle = Ton_libelle + RC + XMLDonnée(DocXML)
FIN
XMLAnnuleRecherche(DocXML) XMLTermine(DocXML)
je n'ai pas testé j'ai fais ca vite fais avec 1h de sommeil mais peut etre que ca peut te donner une piste |
| |
| |
| | | |
|
| | |
| |
Posté le 08 mars 2012 - 10:31 |
Ton code me plait beaucoup, (il manquait juste un "FIN" pour "BOUCLE" )
néanmoins je commence à perdre espoir ... Est-ce mon fichier.xml qui déconne ?
il contient ceci :
<?xml version="1.0"?> <text>Ceci est une news</text> <text>Ceci est une autre news</text> <text>Ceci est ENCORE une news</text>
Il faut bien faire comme ci-dessous ?
InfoXML = fChargeTexte(ComplèteRep(fRepExe())+"E:\Mes Projets Mobile\Android_test\exemple.xml")
C'est le chemin relatif, ou l'absolu ? Où est-ce qu'il faut le placer ce fichier xml ?
et une question à part : les exemples utilisent souvent la fonction "Trace" ... Elle ne possède apparemment pas d'équivalent sous Android... |
| |
| |
| | | |
|
| | |
| |
Posté le 09 mars 2012 - 10:28 |
J'ai réussi à lire le fichier XML.
Le soucis étant qu'il ne rentre pas dans la condition SI :
SI XMLTrouve(DocXML)=Faux ALORS SORTIR
... Du coup il n’exécute pas la suite.
Donc en le plaçant avant j'arrive à lire le contenu du fichier.xml, le problème étant qu'il me lit TOUT le contenu (balises y compris...) je bloque. |
| |
| |
| | | |
|
| | |
| |
Posté le 13 avril 2012 - 09:55 |
Bonsoir,
J'ai l'impression que la fonction XMLExtraitChaîne() ne fonctionne pas sous Android car moi aussi, elle me retourne une valeur nulle.
Bruno |
| |
| |
| | | |
|
| | | | |
| | |
| | |
| |
|
|
|