gespeicherte Datei lässt sich nicht laden



  • Hi!

    Ich habe ein Problem mit Laden oder Speichern einer Datei.
    Ich speichere eine Datei im Doc mittels Serialize so:

    if (ar.IsStoring())
    {
       // TODO: add storing code here
       CKunde obj;
    
       int anz = m_arrKunden.GetSize();
       for(int i=0; i<anz; i++)
       { 
          ar << m_arrKunden.GetAt(i).GetName(); 
          ar << m_arrKunden.GetAt(i).GetNumber();   
          ar << m_arrKunden.GetAt(i).GetUmsatz();
       }
    }
    

    Das funktioniert soweit auch wunderbar, d.h. die Datei enthält auch die entsprechenden Daten, soweit man es lesen kann.
    Ich habe als erstes nur

    ar << m_arrKunden.GetAt(i).GetName(); 
    ar << m_arrKunden.GetAt(i).GetNumber();   
    ar << m_arrKunden.GetAt(i).GetUmsatz();
    

    gehabt und danach eine Schleife drumherum gepackt. Seit die Schleife da ist, kann ich eine gespeicherte Datei nicht mehr laden. Da kommt dann immer die Fehlermeldung: "unerwartetes Dateiformat"
    Meine Laderoutine sieht so aus:

    else
    {
       // TODO: add loading code here
       CKunde obj;
    
       int number;
       ar >> number;
       obj.SetNumber(number);
    
       CString name;
       ar >> name;
       obj.SetName(name);
    
       float umsatz;
       ar >> umsatz;
       obj.SetUmsatz(umsatz);
    
       m_arrKunden.Add(obj);
    
    }
    

    Eine Datei, die ich vor dem Schleifeneinbau gespeichert hatte (also nur ein Datensatz) kann ich jetzt noch problemlos laden.

    Weiss da jemand rat? Ich hoffe ich habe alle Infos gegeben, die nötig sind!?
    Vielen Dank für Eure Antworten.
    Gruss Andi



  • Schreibe vor den Kundendaten die Variable anz in die Datei. Die kannst du dann auslesen und in einer Schleife die Kundendaten lesen.


Anmelden zum Antworten