Programmieren - alles kontrollieren 4.941 Themen, 20.708 Beiträge

Daten von ListView speichern

J0HN / 1 Antworten / Baumansicht Nickles

Hallo...

hab vor kurzem mit VC++ 2008 angefangen und jetzt fehlt mir der richtige Gedanke für ein Problem.
Ich hab ein Programm womit ich Daten von Angestellten und Patienten verwalte.
Aufgebaut ist es wie folgt:
- Angestellte in TabPage1 mit Textboxen und einer listView1
- Patienten in TabPage2 mit Textboxen und einer listView2

Ich würde jetzt gern alle Daten der beiden listView's in eine Datei speichern.
Das habe ich mit BinaryWriter umgesetzt, und am Anfang der Datei wird die Anzahl der Count's geschrieben, also z.B. 2 Einträge bei den Angestellten und 13 bei Patienten sind =15 Einträge...

nun weiß ich nicht wie ich dem BinaryReader sage das die ersten beiden Einträge zu den Angestellten gehören und der Rest zu den Patienten.

Alternativ hab ich jetzt eine dritte listView in der alle Daten der Angestellten und der Patienten gespeichert werden... wie kann ich jetzt die ersten Spalten an die listView1 und die 3-5 Spalte an die listView2 übergeben?

hab folgenden Code der nur funktioniert wenn ich einen Eintrag auswähle:

-------------------code-------------------
//hier fehlt der Befehl der die erste Zeile in der listView3 markiert
ListViewItem^ da = gcnew ListViewItem(dat->Text);
da->SubItems->Add(dat->SubItems[1]->Text);
da->SubItems->Add(dat->SubItems[2]->Text);
listView1->Items->Add(da);
------------------code--------------------

Ok ich hoffe ich hab mich verständlich ausgedrückt...
Bin für jede Idee dankbar

bei Antwort benachrichtigen
Borlander J0HN „Daten von ListView speichern“
Optionen

Vorweg: Hatte mit VC++ bislang nichts zu tun. Habe aber aber unabhängig davon einige Anmerkungen:

Warum willst Du das ganze unbedingt binär speichern? Dann mußt Du dich gezwungenermaßen um viele Dinge von Hand kümmern. Ich würde fast drauf wetten, daß VC++ das lesen und schreiben von XML-Dateien mitbringt. Hätte ganz nebenbei auch den Vorteil, daß sich das Speicherformat später leicht um weitere Angaben erweitern lässt und der Inhalt als PlainText zur Verfügung steht.


<!-- hier fehlt natürlich noch eine xml-defintion -->
<meindatenformat version="0.1">
  < angestelltenliste>
     <angestellter>
       <name>Max Mustermann</name>
       <!-- hier alle Daten des angestellten -->
     </angestellter>
     <angestellter>
       <!-- hier alle Daten des angestellten -->
     </angestellter>
     <!-- weitere Angestellte -->
   </angestelltenliste>
   <patientenliste>
     <patient>
       <!-- Daten des Patienten -->
     </patient>
     <!-- weitere Patienten -->
   </patientenliste>
</meindatenformat>

Verrekungen wie das Speichern der Anzahl von Einträgen entfällt dort. Einfach die Kindelemente von angestellten/patientenliste in einlesen und daraus ein neues Objekt erstellen bzw. einen Listeneintrag.


Gruß
Borlander

bei Antwort benachrichtigen