Datei öffnen und inhalt sortieren



  • Hallo zusammen,

    ich möchte ein zuvor angelegt Datei wieder einlesen und diese soriert nach einer Nummer ausgeben.
    Wie kann ich den Inhalt der Datei für den Sortiervorgang einem Array übergeben?

    Bsp.

    cout << "Bitte geben sie den Dateinamen mit Pfad an" << endl;
    cin >> dateiname;

    datei_ptr = fopen(dateiname, "w");

    do
    {
    cout << "Nach welchen Kriterien moechten Sie sortieren?:" << endl;
    cout << "1. Sortieren nach Personalnummer. " << endl;
    cout << "2. Sortieren in Alphabetischer Reihenfolge" << endl;
    cout << "3. Felder nicht sortieren. " << endl;
    cin >> auswahl;
    if(auswahl != 1 || auswahl != 2 || auswahl != 3)
    {
    cout << "Bitte geben Sie 1,2 oder 3 ein!" << endl;
    }
    else
    {
    ende=1;
    }
    }
    while(ende == 1);

    fread(&merfassung, sizeof(merfassung),1, datei_ptr);

    while(!feof(datei_ptr))
    {
    // Hier soll eigentlich sortiert werden?
    printf("\n%i ; %s ; %s ; %s ; %s ; %lf ",merfassung.persnr,merfassung.name,
    merfassung.strasse,merfassung.plz,merfassung.ort,merfassung.gehalt);
    fread(&merfassung, sizeof(merfassung),1, datei_ptr);

    }

    fclose(datei_ptr);

    }

    Vielen DANK



  • winnypoo schrieb:

    ...
    while(!feof(datei_ptr))
    {
    // Hier soll eigentlich sortiert werden?

    ...

    }

    Woher sollen wir das wissen, ob hier sortiert werden soll



  • 1. Bitte [cpp]-Tags verwenden
    2. man: qsort anschauen
    3. Bitte keinen C/C++-Mischmasch bauen. Hint: std::cout ist _nicht_ C


Anmelden zum Antworten