Datum in Datei automatisch aktualisieren
hallo
habe 2 Datein (xml und lst Format) diese haben beide an einer bestimmten Position eine Datumsangabe. Ich möchte diese nun aktualiesieren. Der restliche Dateiinhalt soll nich verändert werden.
bei der xml Datei Zeile 2 Position 15 bis 22
sowie in Zeile 11 Position 15 bis 22
bei der lst Datei zeile 1 Position 13 bis 20
jeweils ohne Trennungszeichen im Format TTMMJJJJ
wäre sehr dankbar für eine Lösung
habe 2 Datein (xml und lst Format) diese haben beide an einer bestimmten Position eine Datumsangabe. Ich möchte diese nun aktualiesieren. Der restliche Dateiinhalt soll nich verändert werden.
bei der xml Datei Zeile 2 Position 15 bis 22
sowie in Zeile 11 Position 15 bis 22
bei der lst Datei zeile 1 Position 13 bis 20
jeweils ohne Trennungszeichen im Format TTMMJJJJ
wäre sehr dankbar für eine Lösung
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 113749
Url: https://administrator.de/forum/datum-in-datei-automatisch-aktualisieren-113749.html
Ausgedruckt am: 27.04.2025 um 20:04 Uhr
4 Kommentare
Neuester Kommentar
Hallo ms2lork und willkommen im Forum!
Das ließe sich am einfachsten mit einem VBScript erledigen:
Falls Du nicht das aktuelle Datum verwenden willst, kannst Du in Zeile 4 das Apostroph entfernen und zwischen die Anführungszeichen das gewünschte Datum schreiben.
In den Zeilen 9 und 10 bzw 14 sind die Zeile(n) und Startposition(en) innerhalb der Zeile für die jeweilige Datei anzugeben.
Es wird vorausgesetzt (und daher nicht geprüft), dass die in den Zeilen 1 und 2 angegebenen Dateien existieren und dass die zu verändernden Zeilen auch tatsächlich ein Datum an den vorgegebenen Positionen (für Position 1 wäre übrigens eine Anpassung des Scripts erforderlich) enthalten.
Die Ersetzung erfolgt "in der Datei" - daher bitte zum Testen nur mit Kopien arbeiten.
Grüße
bastla
P.S.: Bei Bedarf lassen sich die Dateipfade bzw der Datumswert natürlich auch als Parameter beim Aufruf des Scripts übergeben.
Das ließe sich am einfachsten mit einem VBScript erledigen:
Datei1="D:\Datei1.xml"
Datei2="D:\Datei2.lst"
D=Replace(Date,".","")
'D="TTMMJJJJ"
L=Len(D)
Set fso = CreateObject("Scripting.FileSystemObject")
T = Split(fso.OpenTextFile(Datei1).ReadAll,vbCrLF)
Z= 2: P=15: T(Z-1)=Left(T(Z-1),P-1)&D&Mid(T(Z-1),P+L)
Z=11: P=15: T(Z-1)=Left(T(Z-1),P-1)&D&Mid(T(Z-1),P+L)
fso.CreateTextFile(Datei1).Write Join(T,vbCrLF)
T=Split(fso.OpenTextFile(Datei2).ReadAll,vbCrLF)
Z= 1: P=13: T(Z-1)=Left(T(Z-1),P-1)&D&Mid(T(Z-1),P+L)
fso.CreateTextFile(Datei2).Write Join(T,vbCrLF)
In den Zeilen 9 und 10 bzw 14 sind die Zeile(n) und Startposition(en) innerhalb der Zeile für die jeweilige Datei anzugeben.
Es wird vorausgesetzt (und daher nicht geprüft), dass die in den Zeilen 1 und 2 angegebenen Dateien existieren und dass die zu verändernden Zeilen auch tatsächlich ein Datum an den vorgegebenen Positionen (für Position 1 wäre übrigens eine Anpassung des Scripts erforderlich) enthalten.
Die Ersetzung erfolgt "in der Datei" - daher bitte zum Testen nur mit Kopien arbeiten.
Grüße
bastla
P.S.: Bei Bedarf lassen sich die Dateipfade bzw der Datumswert natürlich auch als Parameter beim Aufruf des Scripts übergeben.