 |
| |
|
|
 |
Autor |
Nachricht |
 |
| |
| Aphton |
#16| Verfasst am: 08.02.2010, 14:40 Titel: Re: Daten behalten in Delphi |
 |
 |
 |
|
Mitglied Alter: 19 Status: offline Beiträge: 187 angemeldet: 31.05.2009

|
Vlt. als ne Anleitung, wie du vorgehen solltest
Speichern:
| Code: | markieren | 1. Lege eine Datei an
2. Du schreibst deine Daten in die Datei, indem du...
3. Mit zwei Schleifen alle Elemente des Arrays durchgehst
4. -1. Die Länge des Strings (DWord)
-2. Den eigentlichen String
-- in die Datei schreibst
5. Schließe die Datei |
|
Auslesen:
| Code: | markieren | 1. Öffne die Datei
2. Mit zwei Schleifen gehst du alle Elemente des Arrays durch
3. -1. Zuerst liest du einen DWord ein - gibt die Länge des anstehenden Strings an (siehe Speichern, Punkt 4.1)
-2. Anschließend den ganzen String (du liest X Bytes ein, wobei X für die Länge des Strings steht)
x. Schließe die Datei |
|
Hoffe ich konnte damit helfen
MfG |
 das Erkennen beginnt, wenn der Erkennende vom zu Erkennenden Abstand nimmt.
Alles is in BUDDAH! |
 |
|
|
|
| |
| Amateurprofi |
#17| Verfasst am: 08.02.2010, 15:39 Titel: Re: Daten behalten in Delphi |
 |
 |
 |
|
aktives Mitglied Alter: 58 Status: offline Beiträge: 359 angemeldet: 17.11.2005 Wohnort: Hamburg Delphi 2005 Professional

|
| Arathok hat folgendes geschrieben: | es ist standart mäßig nach
array[1..12] of array[1..31] of string; aufgebaut jo.
jetzt brauch ich nur noch hilfe wie genau ich den record abspeicherer oder ob es nicht vielleicht noch anders geht... |
Vielleicht so :
Delphi-Quellcode: | zusammenfalten | markieren | 1 · · · 5 · · · · 10 · · · · 15 · · · · 20 · · · · 25 · · · 29
| var data:array[1..12] of array[1..31] of string;
PROCEDURE SaveData;
var f:File; m,d,len:integer;
begin
AssignFile(f,'data.bin');
Rewrite(f,1);
for m:=1 to 12 do
for d:=1 to 31 do begin
len:=Length(data[m,d]);
BlockWrite(f,len,SizeOf(Len));
if len>0 then BlockWrite(f,data[m,d,1],len);
end;
CloseFile(f);
end;
PROCEDURE LoadData;
var f:File; m,d,len:integer;
begin
AssignFile(f,'data.bin');
Reset(f,1);
for m:=1 to 12 do
for d:=1 to 31 do begin
BlockRead(f,len,SizeOf(Len));
SetLength(data[m,d],len);
if len>0 then BlockRead(f,data[m,d,1],len);
end;
CloseFile(f);
end; |
|
|
 Gruß, Klaus
Die Titanic wurde von Profis gebaut,
die Arche Noah von einem Amateur.
... Und dieser Beitrag vom Amateurprofi.... |
 |
|
|
|
 |
|
 |
| |
|
|
| |
 
|
|
| |
|
Du darfst keine Beiträge in dieses Forum schreiben. Du darfst auf Beiträge in diesem Forum nicht antworten. Du darfst Deine Beiträge in diesem Forum nicht bearbeiten. Du darfst Deine Beiträge in diesem Forum nicht löschen. Du darfst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum nicht posten. Du kannst Dateien in diesem Forum nicht herunterladen.
|
|
 |