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

# WriteLn

Write variable to a text file or standard output and append newline

## Declaration

Source position: system.fpd line 71

`procedure WriteLn(`
`V1: Type1`
`); procedure WriteLn(`
`V1: Type1;`
`V2: type2`
`); procedure WriteLn(`
`V1: Type1;`
`V2: Type2;`
`V3: Type3`
`); procedure WriteLn(`
`var F: Text;`
`V1: Type1`
`); procedure WriteLn(`
`var F: Text;`
`V1: Type1;`
`V2: type2`
`); procedure WriteLn(`
`var F: Text;`
`V1: Type1;`
`V2: Type2;`
`V3: Type3`
`);`

## Description

WriteLn does the same as Write for text files, and emits a Carriage Return - LineFeed character pair after that. If the parameter F is omitted, standard output is assumed. If no variables are specified, a newline character sequence is emitted, resulting in a new line in the file F.

Remark: | The newline character is determined by the slinebreak constant.

Remark: | When writing string variables, no codepage conversions are done. The string is copied as-is to the file descriptor. In particular, for console output, it is the programmer's responsibility to make sure that the codepage of the string matches the codepage of the console.

More details can be found in the Write description.

## Errors

If an error occurs, a run-time error is generated. This behavior can be controlled with the {$I} switch.

## See also

Write |  | Write variable to a text file or standard output
Read |  | Read from a text file into variable
Readln |  | Read from a text file into variable and goto next line
Blockwrite |  | Write data from memory to an untyped file
slinebreak |  | Alias for LineEnding

## Example

    Program Example75;

    { Program to demonstrate the Write(ln) function. }

    Var
      F : File of Longint;
      L : Longint;

    begin
      Write ('This is on the first line ! '); { No CR/LF pair! }
      Writeln ('And this too...');
      Writeln ('But this is already on the second line...');
      Assign (f,'test.tmp');
      Rewrite (f);
      For L:=1 to 10 do
        write (F,L); { No writeln allowed here ! }
      Close (f);
    end.