Bonjour a tous,
Je suis confronte a un probleme lors de la transformation d'un fichier CSV en Batch:
En realite, dans la boucle de set content (pas tres propre, je l'avoue), j'aimerai conserver les espaces mais FOR /F les supprime.
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
40 @echo off title Business Partner - CSV Transformation cls set newfile=BPTransform.csv set counter=0 for /f "tokens=* delims=;" %%a in ( BPartner.csv ) do set line=%%a &call :setcontent :setcontent REM -------------------- REM Set content REM -------------------- echo %counter% if /i "%counter%" equ "0" call :setheader pause echo %line% > line.tmp for /f "tokens=1-20,* delims=;" %%a in ( line.tmp ) do set line=%%a;%%b;%%c;%%d;%%e;%%f;%%g;%%h;%%i;%%j;%%k;%%l;%%m;%%n;%%o;%%p;%%r;%%s;%%t;%%u;toto;%%v echo %line% del line.tmp REM -------------------- REM Add line REM -------------------- echo ZECI_STR_BUPA_UPLOAD_I;%line% >> %newfile% set /a counter+=1 goto :eof :setheader REM -------------- REM Add the header REM -------------- echo %line% > line.tmp for /f "tokens=1 delims=;" %%b in ( line.tmp ) do echo ZECI_CONTAINER_I;%%b; >> %newfile% del line.tmp goto :eof :end
Exemple:
Dans ce cas B doit etre egal a ''. Est-ce possible de resoudre ce probleme ?A;;C...etc
J'ai essaye des doubles boucles imbriquees .. pas mieux.
Vous remerciant,
L.
Partager