Entwickler-Ecke

Dateizugriff - Speichern und Laden von Dateien


Donn!e DarKo - Di 23.02.10 14:57
Titel: Speichern und Laden von Dateien
Hey,

Ich hab morgen ne 4h Klausur und mir fehlt das i tüpfelchen ^^

Ich hab noch immer nicht verstanden wie genau ich nun etwas speichern kann mit Readln und Writeln.
Delphi bietet da wohl auch ne gute hilfe, zuhause benutze ich aber Lazarus, da ich unter Unix arbeite.

Könnte jemand so nett sein und mir schnell mal ne kleine Hilfe dazu geben ? Ich würde das gerne verstehen.

Gruß DarKo


Moderiert von user profile iconNarses: Topic aus Delphi Language (Object-Pascal) / CLX verschoben am Di 23.02.2010 um 14:50


Dude566 - Di 23.02.10 15:05

Hier mal ein Beispiel zu readln:

Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
procedure TForm1.Button1Click(Sender: TObject);
var
   temp : string;
begin
  assignfile(datei, ExtractFilePath(ParamStr(0))+'beispiel.txt');
  reset(datei);
  while not EOF(datei) do
  begin
    readln(datei, temp);
    ShowMessage(temp);
  end;
end;


ffgorcky - Di 23.02.10 21:34

Entschuldigung user profile iconDude566,
mich interessiert dieses Thema auch mal, aber ich sehe leider nicht, wie Du die Variable datei deklariert hast. Also von was für einem Typ ist diese?


jaenicke - Di 23.02.10 22:18

Der Typ kann z.B. TextFile sein.


sternbach - Mi 24.02.10 13:05

SCHREIBEN


Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
procedure TForm3.Button10Click(Sender: TObject);

  var ATextFile                       : TextFile;
      i                               : Integer;
      DateiName, DatenSatz            : String;

  begin
    (**********************************************************)
    (** Schreiben verschiedener Datensätze in eine Textdatei **)
    (**********************************************************)
    DateiName := 'c:\tmp\test.txt';
    try
      AssignFile(ATextFile, DateiName);
      Rewrite(ATextFile);
      for i := 1 to 100 do begin
        DatenSatz := Format('Datensatz Nr. %d', [i]);
        WriteLn(ATextFile, DatenSatz);
      end;
    finally
      CloseFile(ATextFile);
    end;
  end;


LESEN


Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
procedure TForm3.Button9Click(Sender: TObject);

  var ATextFile                       : TextFile;
      tl                              : TStringList;
      DateiName, DatenSatz            : String;

  begin
    (****************************************************)
    (** Lesen der Datensätze in eine TStringList       **)
    (** ginge natürlich auch direkt in ein TMemo.Lines **)
    (****************************************************)
    DateiName := 'c:\tmp\test.txt';
    try
      tl := TStringList.Create;
      AssignFile(ATextFile, DateiName);
      Reset(ATextFile);
      while not eof(ATextFile) do begin
        ReadLn(ATextFile, DatenSatz);
        tl.Add(DatenSatz);
      end;
    finally
      FreeAndNil(tl);
      CloseFile(ATextFile);
    end;
  end;


Moderiert von user profile iconGausi: Code- durch Delphi-Tags ersetzt