[Overview][Constants][Types][Classes][Procedures and functions][Variables][Index] | Reference for unit 'System' (#rtl)

# Flush

Write file buffers to disk

## Declaration

Source position: systemh.inc line 1338

`procedure Flush(`
`var t: Text`
`);`

## Description

Flush empties the internal buffer of an opened file F and writes the contents to disk. The file is not closed as a result of this call.

## Errors

Depending on the state of the {$I} switch, a runtime error can be generated if there is an error. In the {$I-} state, use IOResult to check for errors.

## See also

Close |  | Close a file

## Example

    Program Example26;

    { Program to demonstrate the Flush function. }

    Var F : Text;

    begin
      { Assign F to standard output }
      Assign (F,'');
      Rewrite (F);
      Writeln (F,'This line is written first, but appears later !');
      { At this point the text is in the internal pascal buffer,
        and not yet written to standard output }
      Writeln ('This line appears first, but is written later !');
      { A writeln to 'output' always causes a flush - so this text is
        written to screen }
      Flush (f);
      { At this point, the text written to F is written to screen. }
      Write (F,'Finishing ');
      Close (f);  { Closing a file always causes a flush first }
      Writeln ('off.');
    end.