Semikolons aus Textdatei entfernen
hallo
also ich habe 50 TXT (eigentlich csv aber das tut nix zur sache batch datei kann man ja an csv anpassen) dateien die heißen: Testdaten 1 - 10.csv bis Testdaten 491 - 500.csv.
der inhalt sieht in etwa so aus:
Zp:;DE0000000000000000000000000000001;
Kanal:;1-1:1.9.1;
Datum;Uhrzeit;Wert
01.01.2006;00:15;393,0
01.01.2006;00:30;364,3
.
.
.
;;
Zp:;DE0000000000000000000000000000002;
Kanal:;1-1:1.9.1;
Datum;Uhrzeit;Wert
01.01.2006;00:15;393,0
01.01.2006;00:30;364,3
.
.
.
in jeder datei sind 10 solche Zp´s enthalten.
gibt es da ne möglichkeit hinter den Zp:;DE0000000000000000000000000000001 bzw Zp:;DE0000000000000000000000000000002 und hinter Kanal:;1-1:1.9.1 und in der zeile vor Zp die Semikolons zu entfernen das es im enteffekt so aussieht:
Zp:;DE0000000000000000000000000000001
Kanal:;1-1:1.9.1
Datum;Uhrzeit;Wert
01.01.2006;00:15;393,0
01.01.2006;00:30;364,3
.
.
.
Zp:;DE0000000000000000000000000000002
Kanal:;1-1:1.9.1
Datum;Uhrzeit;Wert
01.01.2006;00:15;393,0
01.01.2006;00:30;364,3
.
.
.
danke schon ma für eure hilfe und hoffe das ihr ne lösug kennt den habe keine lust alle 50 datein mitn texteditor zu öffnen un zu ändern da jede datei 8mb groß ist und das relativ lange dauern würde!
MfG
MTB
also ich habe 50 TXT (eigentlich csv aber das tut nix zur sache batch datei kann man ja an csv anpassen) dateien die heißen: Testdaten 1 - 10.csv bis Testdaten 491 - 500.csv.
der inhalt sieht in etwa so aus:
Zp:;DE0000000000000000000000000000001;
Kanal:;1-1:1.9.1;
Datum;Uhrzeit;Wert
01.01.2006;00:15;393,0
01.01.2006;00:30;364,3
.
.
.
;;
Zp:;DE0000000000000000000000000000002;
Kanal:;1-1:1.9.1;
Datum;Uhrzeit;Wert
01.01.2006;00:15;393,0
01.01.2006;00:30;364,3
.
.
.
in jeder datei sind 10 solche Zp´s enthalten.
gibt es da ne möglichkeit hinter den Zp:;DE0000000000000000000000000000001 bzw Zp:;DE0000000000000000000000000000002 und hinter Kanal:;1-1:1.9.1 und in der zeile vor Zp die Semikolons zu entfernen das es im enteffekt so aussieht:
Zp:;DE0000000000000000000000000000001
Kanal:;1-1:1.9.1
Datum;Uhrzeit;Wert
01.01.2006;00:15;393,0
01.01.2006;00:30;364,3
.
.
.
Zp:;DE0000000000000000000000000000002
Kanal:;1-1:1.9.1
Datum;Uhrzeit;Wert
01.01.2006;00:15;393,0
01.01.2006;00:30;364,3
.
.
.
danke schon ma für eure hilfe und hoffe das ihr ne lösug kennt den habe keine lust alle 50 datein mitn texteditor zu öffnen un zu ändern da jede datei 8mb groß ist und das relativ lange dauern würde!
MfG
MTB
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 65828
Url: https://administrator.de/contentid/65828
Ausgedruckt am: 05.11.2024 um 06:11 Uhr
4 Kommentare
Neuester Kommentar
hi,
vielleicht hilft dir dieses kleine Tool ja weiter
http://www.programmersheaven.com/download/41236/download.aspx
ciao
TH
vielleicht hilft dir dieses kleine Tool ja weiter
http://www.programmersheaven.com/download/41236/download.aspx
ciao
TH
Hallo MTB4ever,
vorab ich habs nicht hinbekommen die Zeien mit den Datums- und Uhrzeitangaben in die neuen Dateien umzulenken ohne alles in Anführungszeichen zu setzen ...werd es später nochmal versuchen...
Wenn Dich die Anführunszeichen allerdings nicht stören, dann waere das hier die Lösung:
Es wird ein Ordner mit dem Namen "cvs.Semikolons.fix" angelegt, in dem sich dann die gefixten cvs dateien befinden.
Gruesse, wobleibtdiezeit
vorab ich habs nicht hinbekommen die Zeien mit den Datums- und Uhrzeitangaben in die neuen Dateien umzulenken ohne alles in Anführungszeichen zu setzen ...werd es später nochmal versuchen...
Wenn Dich die Anführunszeichen allerdings nicht stören, dann waere das hier die Lösung:
@echo off
if not exist "cvs.Semikolons.fix\" md cvs.Semikolons.fix
for /F "delims=" %%i in ('dir /b "*.cvs"') do set "cvsdatei=%%i"& for /F "delims=" %%a in ('type "%%i"') do set "fixzeilen=%%a"& call :fixzeilen_call "%%a"
goto :eof
:fixzeilen_call
if "%fixzeilen:~0,4%" == "Zp:;" set "fixzeilen=%fixzeilen:~0,-1%"
if "%fixzeilen:~0,7%" == "Kanal:;" set "fixzeilen=%fixzeilen:~0,-1%"
echo "%fixzeilen%">>"cvs.Semikolons.fix\%cvsdatei%"
goto :eof
Es wird ein Ordner mit dem Namen "cvs.Semikolons.fix" angelegt, in dem sich dann die gefixten cvs dateien befinden.
Gruesse, wobleibtdiezeit