Zum Inhalt springen

Daten speichern und wieder laden


Handsup18

Empfohlene Beiträge

Hallo,

ich versuche hier nun schon seit fast 2 Stunden eine Datei zu speichern und wieder zu laden.

Hier die Aufgabenstellung. Es werden daten(Schülerdaten) in eine Listbox übernommen. Diese soll jetz gespeichert und wieder geladen werden können.

Das Speichern scheint zu funktionieren nur das Laden nicht so richtig. Die daten sind dann schon wieder in der Listbox, nur wenn ich bei dieser eine Zeile selektiere sollen die daten des Schüllers in den Editfelder wieder erscheinen. Und genau das klappt noch nicht, entweder ich bekomme da irgendwelche kommischen Zeichen oder es kommt gar nichts.

Hier mal ein Screen und ein Auszug aus dem Quelltext zum Speichern und Öffnen:

Hoff es kann mir jemand helfen

//OEFFNEN

void __fastcall TfrmMain::Oeffnen1Click(TObject *Sender)

{

FILE *fp; //Deklaration des Filepointers

if(OpenDialog1->Execute()==true)

{

//Speichern der Daten in die Datei

fp = fopen(OpenDialog1->FileName.c_str(), "rb");

fread(FTE2, sizeof(struct schueler), schueler_anz, fp);

fclose(fp);

ListBox1->Items->LoadFromFile(OpenDialog1->FileName);

}

}

//---------------------------------------------------------------------------

//SPEICHERN

void __fastcall TfrmMain::Speichernunter1Click(TObject *Sender)

{

FILE *fp; //Deklaration des Filepointers

if(SaveDialog1->Execute()==true)

{

//Speichern der Daten in die Datei

fp = fopen(SaveDialog1->FileName.c_str(), "wb");

fwrite(FTE2, sizeof(struct schueler), schueler_anz, fp);

fclose(fp);

ListBox1->Items->SaveToFile(SaveDialog1->FileName);

}

}

//---------------------------------------------------------------------------

post-56340-14430448158297_thumb.jpg

Link zu diesem Kommentar
Auf anderen Seiten teilen

Bizarr?! Haben es so in der Schule gelernt. Hier nun die Struktur.

#define schueler_anz 32

// Strukturdeklaration

struct schueler

{

unsigned int Nr;

char Name[20];

char Vorname[20];

char Strasse[20];

unsigned int Hausnummer;

unsigned int PLZ;

char Ort[20];

};

TfrmMain *frmMain;

struct schueler FTE2[schueler_anz];

Link zu diesem Kommentar
Auf anderen Seiten teilen

Die Struktur ist soweit sicher.

Allerdings machst du irgendwie alles doppelt. Du liest dein Struktur-Array aus der Datei, und dann liest du aus derselben Datei nochmal den Inhalt der Listbox.

Und beim Speichern schreibst du erst dein Array in die Datei, und dann in dieselbe Datei den Inhalt der Listbox.

Ich bin sicher, das ist so nicht gewollt.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...