Difference between revisions of "TFileStream"
From Lazarus wiki
Jump to navigationJump to searchLine 1: | Line 1: | ||
{{TFileStream}} | {{TFileStream}} | ||
− | A '''TFileStream''' is a descendant of [[TStream]] that | + | A '''TFileStream''' is a descendant of [[TStream]] that gets/stres its data from/to a file on disk. A TFileStream reads entire file data into memory and vice versa. |
{| class="wikitable sortable" | {| class="wikitable sortable" |
Revision as of 00:58, 26 August 2016
│
Deutsch (de) │
English (en) │
français (fr) │
polski (pl) │
A TFileStream is a descendant of TStream that gets/stres its data from/to a file on disk. A TFileStream reads entire file data into memory and vice versa.
Constant | Decimal | Description |
---|---|---|
fmCreate | 65280 | Creates a new file |
fmOpenRead | 0 | opens a file for reading |
fmOpenWrite | 1 | opens a file for writing |
fmOpenReadWrite | 2 | opens a file for reading and writing |
fmShareDenyWrite | 32 | prohibit writing if file is already opened |
read from file fnam.
function readstream( fnam: string ): string;
var
strm: TFileStream;
n: longint;
txt: string;
begin
txt := '';
strm := TFileStream.Create( fnam, fmOpenRead or fmShareDenyWrite );
try
n := strm.Size;
SetLength( txt, n );
strm.Read( txt[1], n );
finally
FreeAndNil( strm );
end;
result := txt;
end;
Write txt to file fnam.
procedure writestream( fnam: string; txt: string );
var
strm: TFileStream;
n: longint;
begin
strm := TFileStream.Create( fnam, fmCreate );
n := Length( txt );
try
strm.Position := 0;
strm.Write( txt[1], n );
finally
FreeAndNil( strm );
end;
end;