#### 14.2.3 Line-Oriented Input

To read from a file it must be opened for reading using `fopen`. Then a line can be read from the file using `fgetl` as the following code illustrates

         fid = fopen ("free.txt");
         txt = fgetl (fid)
              -| Free Software is needed for Free Science
         fclose (fid);

This of course assumes that the file ``free.txt`' exists and contains the line ``Free Software is needed for Free Science`'.

— Built-in Function: fgetl (fid, len)

> Read characters from a file, stopping after a newline, or EOF, or len characters have been read. The characters read, excluding the possible trailing newline, are returned as a string.

> If len is omitted, `fgetl` reads until the next newline character.

> If there are no more characters to read, `fgetl` returns −1.

> See also: fread, fscanf.

— Built-in Function: fgets (fid, len)

> Read characters from a file, stopping after a newline, or EOF, or len characters have been read. The characters read, including the possible trailing newline, are returned as a string.

> If len is omitted, `fgets` reads until the next newline character.

> If there are no more characters to read, `fgets` returns −1.

> See also: fread, fscanf.