[VB.NET]DataGridView Speichern und Laden

05/05/2013 23:18 Requi#1
Guten Abend,

Ich schreibe freiwillig für die Schulsozialarbeit bei uns ein kleines Auswertungsprogramm.

Habe jz das Problem, dass man die jeweiligen Schüler sowie die Liste der Schüler gespeichert werden muss und später auch geladen.

Nach Stunden langem googlen bin ich zu keinem rechtem Ergebnis gekommen.

Würde mir jemand vllt erklären, wie ich das bewältigen kann?

Es gibt bei jeder Tabelle nur 1 Spalte.

MfG
05/05/2013 23:30 Syc#2
Wie sahen denn deine Ansätze aus?

Dürfte doch recht simpel z.b. per .csv gehen.
05/05/2013 23:58 Syc#3
Quote:
Originally Posted by Requι View Post
Per .csv ist witzig :D
Wie soll ich das verstehen?

Quote:
Originally Posted by Requι View Post
Das normale Speichern von .txt hilft mir nicht weiter.
Ob du was inner .txt oder inner .csv speicherst macht keinen unterschied.
Das prozedere ist doch genau das gleiche, außer dass du halt nach jedem wert ein Zeichen (meist ein Semikolon setzt).

Quote:
Originally Posted by Requι View Post
Wie bekomme ich den richtigen Inhalt von der Tabelle in die Datei gespeichert?
Code:
Schleife, die alle Spalten durchgeht
    Schleife, die alle Zellen einer Spalte durchgeht
        exportstring += WertderZelle + ";"
05/06/2013 08:27 Syc#4
Also wenn du sicher weißt, dass es nur eine Spalte ist, dann geht das ungefähr so:

Aufbau der Datei sollte so sein:

Code:
wert1;
wert2;
wert3;
Du liest die ganze Datei in einen String ein, der dann so aussehen sollte, wie das geht, steht zu 100% im Buch:

Code:
importstring = wert1;wert2;wert3;
In das Gridview einlesen sollte dann ungefähr so gehen:

Code:
DataGridView Spalte hinzufügen

Schleife, die so oft wie die Größe von importstring.Split(';')
     DataGridView Zelle hinzufügen (importstring.Split(';')[i])
05/06/2013 10:37 dready#5
Der Komplettheit halber ;) , was Cry sagt klappt natürlich aber was du hier machen willst ist Daten Serialisieren ;)
Und mit diesem Wissen stehst du nun schon deutlich besser da :P
Wie wir ja alle wissen sind Programmierer unglaublich faule Säcke und dementsprechend gibts natürlich für sowas auchschon recht komfortable libarys :P

Hier einmal mit XML

Code:
XmlSerializer ser = new XmlSerializer(typeof(DataTable));
DataTable dt = new DataTable("data");
TextWriter writer = new StreamWriter(Application.StartupPath+"\\"+fname+".xml");
ser.Serialize(writer, dt);
writer.Close();