Entwickler-Ecke

Dateizugriff - Exception bei TFileStream


cromos - Sa 23.08.03 11:56
Titel: Exception bei TFileStream
Hallo

follgende Prozedur:

Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
procedure SaveStringToFile(Filename, SaveString: string);  
var fs:TFileStream;  
begin  
  fs:=TFileStream.Create(Filename, fmCreate or fmShareExclusive  );  
  fs.Write(SaveString[1], Length(SaveString));  
  fs.Free;  
end;

Aufruf mit:

Delphi-Quelltext
1:
2:
3:
str := ListView1.Selected.SubItems.CommaText;
ProgrammOrdner:=ExtractFilePath(application.ExeName);
SaveStringToFile(ProgrammOrdner + 'test.csv', str);

Bekomme eine Exception. Warum? Kann jemand helfen?

Gruss
Cromos

Moderiert von user profile iconTino: Code- durch Delphi-Tags ersetzt.


AndyB - Sa 23.08.03 12:05

Zitat:
fs:=TFileStream.Create(Filename, fmCreate or fmShareExclusive );
fs.Write(SaveString[1], Length(SaveString));
fs.Free;

Neben dem, dass hier der Resourcenschutzblock (try/finally) fehlt, gehst du davon aus, dass SaveString nie leer ist.


Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
fs:=TFileStream.Create(Filename, fmCreate or fmShareExclusive  );
try
  if SaveString <> '' then
    fs.Write(SaveString[1], Length(SaveString));
finally
  fs.Free;
end;