array speichern und wieder laden
-
Hi gibt es eine möglichkeit einfach ein Array Integer oder String mit sowas wie SaveToFile zu speichern und auch wieder mit LoadFromFile zu öffnen???
Gibt es dazu FAQs bzw Tutorials???MfG Straightflush
-
TStringList bietet SaveToFile und LoadFromFile
-
ich weiß aber was mach ich wenn ich nen 2-dimensionales array mit interger werten speichern will???
-
- eine Eigene Speicher routine schreiben (zB mit TStream)
- in das StringList schreiben und eine Dismension mit ";" trennen zB("12;345;3455;")
- TStringGrid verwendenetc...
-
ich weiß aber was mach ich wenn ich nen 2-dimensionales array mit interger werten speichern will???
Eindeutig fragen:
ein Array Integer oder String mit sowas wie SaveToFile
Int, Array, String, sowas, wie, könnte, also, denn...
-
TStringList kennt doch jeder
Aber ich will was wie
int Array[10][10]; Array->SaveToFile(DateiName):
-
Dan wirf die Hilfe an, und liess mal nach TStream nach
-
TStringList kennt doch jeder
Daten wegschreiben kann doch jeder.
-
hat da jemand nen beispiel oder nen tutorial für weil ich hab keine ahnung wie ich des auf nen array anwenden soll
-
Christian211 schrieb:
TStringList kennt doch jeder
Daten wegschreiben kann doch jeder.
garnich wahr *heul*
-
Du hättest mal TStream hier in der Suche eingeben können:
http://www.c-plusplus.net/forum/viewtopic-var-t-is-108869-and-view-is-previous.html
-
Ich würde hier lieber die C++Standardstreams verwenden. Eine kurze Anleitung gibt es z.Bsp. hier http://www.c-plusplus.net/forum/viewtopic-var-t-is-39469.html
Ein Array mußt du halt in einer Schleife rausschreiben, dabei aber die Arraygröße nicht vergessen. Zwischen den einzelnen Zahlen noch Trennzeichen einfügen (z.Bsp. Leerzeichen).
rausschreiben etwa soint xsize(10), ysize(10); ofstream out("array.txt"); //Ausgabestream auf Datein erzeugen out << xsize << " " << ysize << "\n"; //Größen rausschreiben // Array rausschreiben for( int i=0; i<xsize; ++i) for( int j=0; j<ysize; ++j) out << Array[i][j] << " "; out.close();einlesen etwa so
ifstream in("array.txt"); in >> xsize >> ysize; // Array evtl. noch erzeugen for( int i=0; i<xsize; ++i) for( int j=0; j<ysize; ++j) in >> Array[i][j];Tests auf Arraygrenzen, dynamisches Erzeugen des Arrays, Tests auf Dateiende etc. bei Bedarf einfügen.
-
binär wäre mir aber lieber...
-
Warum?
Aber wenn du willst. Hier kannst du dann auf die Trennzeichen verzichten. Zu Lesen und Schreiben nimmt man dann read/write. Das steht aber auch im geposteten Link aus der C++FAQ.