File input/output is part of Short Circuit's Console Program Basics selection.
Task

Create a file called   "output.txt",   and place in it the contents of the file   "input.txt",   via an intermediate variable.

In other words, your program will demonstrate:

   how to read from a file into a variable
   how to write a variable's contents into a file


Oneliners that skip the intermediate variable are of secondary interest — operating systems have copy commands for that.




MODULE FileIO EXPORTS Main;
 
IMPORT IO, Rd, Wr;
 
<*FATAL ANY*>
 
VAR
  infile: Rd.T;
  outfile: Wr.T;
  txt: TEXT;
 
BEGIN
  infile := IO.OpenRead("input.txt");
  outfile := IO.OpenWrite("output.txt");
  txt := Rd.GetText(infile, LAST(CARDINAL));
  Wr.PutText(outfile, txt);
  Rd.Close(infile);
  Wr.Close(outfile);
END FileIO.