Bonjour,
Je vous explique mon problème :
J'ai un fichier a.txt contenant :
111
222
555
J'ai un fichier b.txt contenant :
1;TEST;;111;LA
2;TEST2;;112;LA
3;TEST3;;222;LA
4;TEST4;;333;LA
5;TEST5;;555;LA
J'aimerais que dans mon fichier b.txt, si les valeurs [111,222 et 555) sont présentes les mettre dans la zone précédente :
1;TEST;111;;LA
2;TEST2;;112;LA
3;TEST3;222;;LA
4;TEST4;;333;LA
5;TEST5;555;;LA
J'ai fait ce bout de code qui parcours bien les fichiers mais ça ne fonctionne pas à cause des ";;", mon tokens ne les prends pas en compte et donc ça me fausse tout.
Avec mon code, le echo qui apparait met :
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 set strRepFicTranscoSource=\\cheminA set strRepFicTranscoCible=\\cheminB set strNomFicSource=a.txt set strNomFicCible=b.txt REM On parcours les lignes du fichier 'a.txt' REM ------------------------------------------- for /f "delims=" %%a in ('type %strRepFicTranscoSource%\%strNomFicSource%') do ( REM On parcours les lignes du fichier 'b.txt' REM ------------------------------------------- for /f "tokens=1-5 delims=;" %%b in ('type %strRepFicTranscoCible%\%strNomFicCible%') do ( REM Pour la ligne sélectionnée, on parcours chaque valeur REM ------------------------------------------- echo %%d - %%e ) ) pause
111 - LA
112 - LA
222 - LA
...
Au lieu de :
- 111 (le premier champ est vide)
- 112
...
Pouvez-vous m'aider ?
Cordialement
Partager