Textdatei auslesen, mit anderer Vergleichen und neue schreiben

Justin1337

Grünschnabel
Hallo zusammen

Wir führen im Geschäft eine Liste mit tausenden von Einträgen im Textfile. Jeder Eintrag jeweils mit einem Datum versehen.
Die Datei wird täglich um mehrere 1000 Zeilen grösser bis Ende Monat, dann wird bei 0 begonnen. Dies ist eher schlecht, da wir die Daten von 2 Monaten benötigen würden.
Nun wollte ich fragen ob es möglich ist mit Batch (Windows PC) die letzte Zeile zu finden, Datum halten, vergleichen mit der neuen Datei und alle neueren Zeilen auslesen und der alten Datei hinzuzufügen

Ziel wäre es, dass ich jeden Morgen kurz die Batch ausführen könnte und automatisch ein neues File generiert wird mit den alten Daten (max. 2 Monate) plus die neuen Daten.

Ist dies möglich?
Falls ja, könnt ihr mir ein paar Hinweise geben mit was ich mich schlau machen muss um das programmieren zu können, arbeitete leider erst einmal mit Batch

Danke und Gruss
Justin
 
Hi und Willkommen bei tutorials.de :)

Da jedes Monat seine eigene, abgetrennte Datei hat,
gibt es ja keine Überschneidungen?

Dann würde es reichen, einfach eine neue Datei
aus dem Gesamtinhalt mehrerer anderer zu erstellen,
ohne ein Datum auszulesen?

Oder hab ich was falsch verstanden?
 
Das Problem ist, wenn der Monat vorbei ist, möchte ich dass die neuen Daten hinzugefügt werden. Und nach 2 Monaten die ältesten Daten rausfliegen. Anschliessend kommen ja täglich neue Datein dazu, dann sollen zum alten File die neuen Daten dazu und die alten wieder rausfliegen.
 
Also immer die letzten 60 Tage...

Batch wird damit wahrscheinlich überfordert sein.
Ist eigentlich nur ein besserer Programmstarter...

Mit einer der großen Programmiersprachen (C++, Java, C# etc.)
wäre das überhaupt kein Problem.


Ist das Ganze nur für Windows oder auch Linux (oder noch etwas Anderes)?
Wie schaut denn so eine Dateizeile zB. aus?
Wie werden die Monatsdateien unterschieden? Bestimmtes Format vom Dateinamen oder...?
 
hmm schade. wollte das ganze machen ohne gross ein webserver etc.. verwenden zu müssen
die dateien haben jeweils den monatsnamen in sich drin

alle zeilen sehen so aus:

02.11.2011 '9934133762204430517' 1,400 0,00 04030105087 00604000390 Firma AG John Doe Strasse 51 3050 Bern CH Priority SI
 
Warum Webserver? :confused:
Da brauchst du keinen Webserver.

Das ist für einen erfahreneren Programmierer in ein paar Minuten gemacht.

Wenn die Dateinamen Monatsnamen sind...was ist dann mit Dateien älterer Jahre?

Und bitte Netiquette 15 beachten.
 
Ok, also Java, Javascript und Groovy kann ich, PHP und C++ hätte ich schon mehr Mühe.
In welcher Sprache würdest du denn empfehlen dies zu machen? Was ich einfach nicht weiss ist, wie kann ich dann die Aufgabe durchführen lassen, dachte dies geht nur über Batch oder ein Server der das Script durchführt.

Die älteren Dateien werden dann wieder gelöscht, da die schon zu veraltet sind. Ich benötige nur die Postsendungsdaten der letzten 2 Monate, danach wird das Paket ja wohl ausgeliefert sein :)
 
a) Der Computer läuft laut dir mit Windows
b) Das Programm und die Dateien sind am gleichen Computer
Stimmt beides? Dann kein Grund für irgendeinen Server.

Und ob du eine .bat-Datei oder eine .exe-Datei startest,
ist für den Benutzer kein Unterschied.


JavaScript und PHP sind eher für den Internetbereich.
Theoretscih wäre es zwar möglich, aber ungünstig.

Groovy...kenn ich zu wenig :D
Fällt aber zu Java.

Java und C/C++ sind beide gleich gut dafür.
Wenn es um sehr viel Zeilen geht ist C bzw. C++ etwas schneller.

Ich persönlich würde C nehmen.
bin mit C sicher schneller beim programmieren.

...Ich mach bei Gelegenheit mal sowas, kommt heute später.
 
Zurück