Sortieren einer txt-Datei

touristguy

Mitglied
Hallo,
ich habe mir ein Telefonbuchprogramm mit C geschrieben, es liest über die Konsole die Daten ein und speichert sie in einer .txt-Datei. Leider ist diese nicht nach dem Alphabet sortiert was sie relativ unübersichtlich macht. Vielleicht kann mir hier jemand weiterhelfen wie ich die Datei am besten sortiere. Ich habe überlegt ob ich die komplette Datei in einen dynamischen Zwischenspeicher lese und dann über Bubblesort, Merge oder ähnliches sortiere. Wobei ich auch hier ein Problem habe, denn ich weiß nicht wie ich auslesen kann wieviele Zeilen meine Datei hat.
Wäre super wenn mir da jemand weiterhelfen könnte.
Vielen Dank.

Gruß Phil
 
In C ist das mit der Unbekannten Länge natürlich ein Problem aber wenn du selbst diese Datei verwaltest warum packst du dann nicht in die erste Zeile eine Angabe über die Anzahl der Einträge. Anschließend einfach Zeilenweise in ein Array einlesen und per sort sortieren (quicksort ist hier implementiert). Der Funktion sort musst du dann noch eine compare-Funktion mitgeben die -1|0|+1 zurückgibt. Anschließend dann die komplette Datei neu schreiben. Was eleganteres fällt mir nicht ein.
 
Zurück