Zahl in Datei suchen
-
Hallo,
Ich soll für die Schule ein Programm schreiben das Daten in eine Struktur einliest und in eine Datei schreibt. Dann müssen die Datensätze über eine Zahl(Auftragsnummer) wiedergefunden und ausgegeben werden. Hat jemand ne Idee wie ich das am einfachsten machen kann?
-
siehe http://www.c-plusplus.net/forum/viewtopic.php?t=39351 - unten
-
Ja, da steht schonmal wie man eine Struktur einlesen kann. Aber das größere Problem ist die richtige Struktur in einer Datei anhand einer Nummer zu finden.
Das Programm ist ein Verwaltungsprogramm für Leasingunternehmen(Autos). Die Strukturen bestehen also aus Auftragsnummer, Objektnummer, Anfangsdatum...
Jetzt soll ich diese Datensätze in einer Datei speichern und sie bei einem späteren Programmaufruf bei Eingabe der Auftragsnummer wieder ausgeben können. Wie kann ich die richtige Struktur in der Datei finden?
Wahrscheinlich könnte man jeden Datensatz nacheinander einlesen und die Auftragsnummer vergleichen. Geht das überhaupt oder geht es vielleicht auch noch eleganter und schneller.
-
erstell doch eine andere datei, in der nur die auftragsnummer steht.
diese liest du ein, und wenn du die auftragsnummer zB an stelle 3 gefunden hast, dann liest du die 3. struct aus der anderen datei ein.
-
Das hört sich gut an. Das werde ich mal probieren. Danke.
-
So, habe mich heute mal wieder dran gesetzt aber bekomme es noch nicht hin.
Ich habe folgende Struktur:
struct Leasing { int LeasingVtrNR, BegTag, BegMonat, BegJahr, EndTag, EndMonat; int EndJahr, KM, GesJahr, GesMonat, Dauer; char LeasingObjNR[6], LeasingObjBez[22], KundenNR[6], Kundenname[22]; char Kundenvorname[22], Strasse[22], PLZ[7], Ort[22]; double Betr; } Mieten;
Ich habe aus den Beispielen in deinem Link geschlossen dass der Befehl fwrite so aussehen sollte um eine Struktur in eine Date zu schreiben:
fwrite(Mieten, sizeof(Leasing), 1, datei) ;
Abe Mieten scheint falsch zu sein. Kann mir jemand sagen was ich anstatt Mieten einsatzen muss. (datei ist der Filepointer)
-
Hilfe !!
Muss das Programm Monatg abgeben und ich muss wissen wie ich dieses fwrite schreibe.
Bitte helft mir.
-
Oh, da war n Fehler in der FAQ
es muss fwrite(&s, sizeof(s), 1, file)
heissen.also mach ein & vor dein Miete
Aber das hättest du auch aus einer guten Doku herauslesen können...
-
JA danke. So geht es.
Mit der Doku ist das so eine Sache. Ich habe Visual C++ 6 aber ich habe keine Hilfe dabei. Also lann ich nicht mal schnell die Befehlssyntax nachsehen.
Hast du vielleicht einen Tipp wo ich so eine Befehlsreferenz runterladen kann? Muss aber offline sein weil ich an dem Rechner an dem ich programmiere kein Internet habe.
-
Bei Borland gibt es Hilfedateien zum runterladen.
Die findest du unter Update vom BCB