ms2lork

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
Auf Facebook teilen
Auf X (Twitter) teilen
Auf Reddit teilen
Auf Linkedin teilen

Content-ID: 113749

Url: https://administrator.de/forum/datum-in-datei-automatisch-aktualisieren-113749.html

Ausgedruckt am: 27.04.2025 um 20:04 Uhr

bastla
bastla 13.04.2009 um 18:20:07 Uhr
Goto Top
Hallo ms2lork und willkommen im Forum!

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)
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.
ms2lork
ms2lork 14.04.2009 um 17:55:07 Uhr
Goto Top
hi,
danke für die schnelle Antwort funktioniert super. Nur hab ich irgendwie die Zeit vergessen. In der xml Datei steht nach dem Datum mit Leerzeichen getrennt (TTMMJJJJ HHMM) noch die Uhrzeit. So dass diese teilweise in der Zukunft lag und er mir dann in der folge immer ein Fehler gemeldet hat. Kann man die Uhrzeit einfach gleich mit ändern?

vielen Dank im vorraus
lork
bastla
bastla 14.04.2009 um 18:15:54 Uhr
Goto Top
Hallo ms2lork!

Es sollte genügen, die Zeilen 3 und (der Ordnung halber face-wink) 4 zu ändern:
D=Replace(Date,".","") & " " & Replace(Left(Time,5),":","")
'D="TTMMJJJJ HHMM"
Grüße
bastla
ms2lork
ms2lork 15.04.2009 um 14:32:30 Uhr
Goto Top
Danke hab jetzt noch die beiden Datein seperat bearbeiten lassen, weil bei der .lst-Datei kein Zeit Angabe dran ist, und funktioniert alles.

bye lork