Vorschläge für: "Daten in Binärdatei speichern und wieder laden"



  • Hallo...

    also ich habe ein Prog geschrieben mit dem ich Filmdaten verwalten kann.
    Ich will den Titel, Genre und länge von Filmen speichern.
    Habe dazu 3 Textboxen nen Button und eine ListView(3 Spalten: Titel, Genre, Länge)
    Ich kann die Daten in eine Binärdatei speichern und auch wieder laden, nur läd er bei mir die Daten nicht richtig.
    Er füllt die ersten beiden Spalten (also Titel und Genre) und dann fängt er wieder bei Titel an, mal ein Beispiel:

    Titel        Genre      Länge
    Matrix     Action
    75min
    Saw 1     Horror
    90min

    aussehen sollte es so:

    Titel        Genre     Länge
    Matrix     Action     75min
    Saw 1     Horror     90min

    könnte mir jemand einen Vorschlag mach wie Ihr das umsetzen würdet?

    Danke...



  • Versuchs doch mal mit BinaryWriter / Reader. Siehe auch MSDN

    MfG
    Marco



  • Ja den BinaryReader und BinaryWriter habe ich benutzt...
    nur leider geht es nicht...

    MfG



  • J0HN schrieb:

    Ja den BinaryReader und BinaryWriter habe ich benutzt...
    nur leider geht es nicht...

    MfG

    Keine gute Beschreibung; vielleicht solltest du den Code posten, der zeigt, wie du den BinaryReader benutzt, damit man dir helfen kann. Denn hier handelt es sich bestimmt nicht um eine Situation, in welcher man nach einem Workaround suchen muss 😉

    MfG



  • Ok hier der Code von der Laden Methode:

    for(int i=0; i<anz; i++)
    		{
    			ListViewItem^ lvi=gcnew ListViewItem(dat->ReadString());
    			lvi->SubItems->Add(dat->ReadString());
    			listView1->Items->Add(lvi);
    		}
    		dat->Close();
    


  • J0HN schrieb:

    Er füllt die ersten beiden Spalten (also Titel und Genre)

    J0HN schrieb:

    Ok hier der Code von der Laden Methode:

    for(int i=0; i<anz; i++)
    		{
    			ListViewItem^ lvi=gcnew ListViewItem(dat->ReadString());
    			lvi->SubItems->Add(dat->ReadString());
    			listView1->Items->Add(lvi);
    		}
    		dat->Close();
    

    Ich zähle in deiner Schleife für jede Iteration nur zwei ReadString-Calls. Könnte dies eventuell ein Grund dafür sein, dass nur zwei Spalten gelesen werden? 😕 😃 😉

    MfG



  • rant Ich danke dir !!!!!!!!!!!!!!!

    Ich glaube ich habe zu lange auf den code geschaut, und den Wald vor lauter Bäumen nicht mehr gesehen 😃

    Hier mal der Richtige Code, falls jemand das gleiche problem hat:

    for(int i=0; i<anz; i++)
    		{
    			ListViewItem^ lvi=gcnew ListViewItem(dat->ReadString());
    			lvi->SubItems->Add(dat->ReadString());
    			lvi->SubItems->Add(dat->ReadString());
    			listView1->Items->Add(lvi);
    		}
    

    Nochmals dickes thx 👍


Anmelden zum Antworten