Einzelnen Beitrag anzeigen

Chrissi91

Registriert seit: 28. Jul 2005
849 Beiträge
 
#1

Fehler bei write / writeln in eine Datei

  Alt 26. Dez 2005, 08:12
Meine Procedure:

Delphi-Quellcode:
procedure DateiUeberschreiben(pfad: string; groesse: integer);
var
 i, a, zufall: integer;
 zeichen: string;
begin
 for a:= 1 to 10 do
  begin
   assign(datei,pfad);
   rewrite(datei);
   for i:= 1 to groesse do
    begin
     zufall:=random(15)+1;
     if zufall= 1 then zeichen:='@';
     if zufall= 2 then zeichen:='t';
     if zufall= 3 then zeichen:='ö';
     if zufall= 4 then zeichen:='+';
     if zufall= 5 then zeichen:='~';
     if zufall= 6 then zeichen:='*';
     if zufall= 7 then zeichen:='#';
     if zufall= 8 then zeichen:='w';
     if zufall= 9 then zeichen:='d';
     if zufall= 10 then zeichen:='b';
     if zufall= 11 then zeichen:=' ';
     if zufall= 12 then zeichen:=']';
     if zufall= 13 then zeichen:='3';
     if zufall= 14 then zeichen:='|';
     if zufall= 15 then zeichen:='2';
     write(datei,zeichen); // Fehlermeldung [Error] Unit1.pas(58): Incompatible types: 'procedure, untyped pointer or untyped parameter' and 'String'
// wenn ich das nehme: writeln(datei,zeichen); kommt das: [Error] Unit1.pas(58): Illegal type in Write/Writeln statement
    end;
   closefile(datei);
  end;
 deletefile(form1.verzeichnis.text);
end;
Die rufe ich wie folgt auf:

Delphi-Quellcode:
procedure TForm1.loeschenClick(Sender: TObject);
begin
 assignfile(datei,verzeichnis.text);
 reset(datei);
 dateiUeberschreiben(verzeichnis.text,filesize(datei));
 closefile(datei);
end;
Was mache ich falsch?
  Mit Zitat antworten Zitat