Batch pour transformer un fichier TXT

Fermé
maohi1975 Messages postés 15 Date d'inscription mardi 24 mai 2016 Statut Membre Dernière intervention 20 avril 2017 - 24 mai 2016 à 01:28
 Maohi1975 - 24 mai 2016 à 19:16
Bonjour à tous ,

j'ai un fichier txt avec ces lignes :

A000001201506070420
B P
C031780406982600004000
C030452063812080004000
C031780406454860010000

et j'aimerais écrire la 2em ligne du fichier avec la date puis les 5 zéros

A000001201506070420
B20150607 00000
C031780406982600004000
C030452063812080004000
C031780406454860010000

est ce possible ?
A voir également:

3 réponses

dubcek Messages postés 18718 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 22 mars 2024 5 615
Modifié par dubcek le 24/05/2016 à 09:08
hello
il ne faut garder que le premier caractère B de la deuxième ligne ?
quelle date ? celle de la 1ère ligne ?
0
dubcek Messages postés 18718 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 22 mars 2024 5 615
24 mai 2016 à 09:40
comme ça ?
C:> cc
A000001201506070420
B20150607 00000
C031780406982600004000
C030452063812080004000
C031780406454860010000

C:> type cc.bat
@echo off
setlocal enabledelayedexpansion
set c=1
for /f "delims=" %%a in ('type fichier.txt') do (
set l=%%a
if !c! EQU 1 set d=!l:~7,8!
if !c! EQU 2 set l=!l:~0,1!!d! 00000
echo !l!
set /a c+=1
)
0
exactement dubcek , c'est ce que je cherche.

merci ...j'ai essayé cela qui fonctionne aussi.

@echo off
setLocal EnableDelayedExpansion

for /f "tokens=* delims= " %%a in (comcde1.txt) do (
set str=%%a
set str=!str:B P=B%date:~6,4%%date:~3,2%%date:~0,2% 00000!

echo !str!>>fichier2test.txt
)
type fichier2test.txt>comcde1.txt
del fichier2test.txt
0