wxListCtrl- Werte per Addline in txt-File speichern?



  • geht das? und wenn ja, wie?

    vielen dank



  • im grunde genommen funktionert es zwar so, allerdings stürzt das Programm bei AddLine ab.

    wxTextFile file;
    	file.Create(filename);
    	file.Open(filename);
    
    	file.AddLine(person->Adresse.name);
    
    	file.Write();
    	file.Close();
    


  • Dann würde ich mal behaupten, dass dein Zeiger ungültig ist.
    Was sagt der Debugger?



  • habsjetzt ein bisschen verändert, will nun ein array, welches einen Struct beinhaltet, mit 30 verschiedenen Einträgen speichern.

    bool MDIDoc::OnSaveDocument (const wxString & filename)
    {
    	Modify (false);
    	wxMessageBox(_("Datei gespeichert!"), _("Erfolgreich"));
    
    	// Eintragen der Werte
    	wxTextFile file;
    	file.Create(filename);
    	file.Open(filename);
    
    	file.AddLine(???????);
    
    	file.Write();
    	file.Close();
    
    	return true;
    }
    

    das ist der struct:

    struct adresse
    {
    	wxString name;
    	wxString vorname;
    	wxString strasse;
    	wxString plz;
    	wxString ort;
    	wxString land;
    	wxString telefon;
    	wxString email;
    	wxString position;
    	wxString verein;
    };
    
    	adresse daten[30];
    	int anz_adressen;
    

    so sieht's jetzt aus...



  • http://www.c-plusplus.net/forum/283031

    Habe dir doch hier bereits gesagt, dass du nen std::vector nehmen sollst und kein Array, weil du so eine Begrenzung auf 30 Einträge hast.
    Aber es wäre vllt gut, wenn du mal ein C++ Buch zur Hand nehmen würdest.

    daten[x].Name
    

    So greift man auf ein Array zu. X ist die Position im Datenfeld. Du musst das halt mit einer for-schleife durchlaufen und alles speichern.
    Oder eben durch einen Vector iterieren, was die weit bessere Lösung wäre.



  • auftrag war ein array. leider scheint das problem anderswo zu liegen, denn das habe ich schon versucht...



  • Welcher Auftrag? Schulaufgabe? Oder von was reden wir jetzt?
    Es wäre halt mal gut wenn du etwas präziser wärst und auch mit an der Lösung arbeiten würdest.
    Mir kommts grade so vor, dass du schon von der for-schleife überfordert bist.
    In dem Fall wäre die einzige Lösung ein C++ Buch durchzuarbeiten.


Anmelden zum Antworten