Une solution pour récuperer les valeurs entre 2 balises d'un fichiers XML, où il n'y a pas d'espace entre les balises et les valeurs à récuperer.
On va utiliser la substitution pour creer une valeur "#1#" à la place de la balise <balise> et "#2#" à la place de </balise>
et on affiche tous ce qu'il y a entre #1# et #2#
Amicalement
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39 ::::Par SachaDee ::::07/02/2013 @echo off :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: ::::DEFINITION DE LA BALISE ::::MODIFIER CETTE VALEUR POUR INDIQUER QUEL BALISE IL FAUT PARSER SANS <> ::::EXEMPLE ICI <X509Certificate> set valeur1=X509Certificate ::::DEFINITION DU FICHIER XML ::::OU SERA EFFECTUE LA RECHERCHE set f_xml=1.xml ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: set valeur2=/%valeur1% setlocal enabledelayedexpansion enableextensions set sw1=0 for /f "delims=" %%a in (%f_xml%) do ( set ligne=%%a set ligne=!ligne:^<%valeur1%^>= #1# ! set ligne=!ligne:^<%valeur2%^>= #2# ! for /d %%b in (!ligne!) do (if "%%b"=="#2#" goto end if !sw1!==1 echo %%b if "%%b"=="#1#" set sw1=1 )) :end endlocal pause
Partager