with Ada.Directories; with Ada.Direct_IO; with Ada.Text_IO; procedure Extra_IO.Read_File (Name : String) is package Dirs renames Ada.Directories; package Text_IO renames Ada.Text_IO; -- Get the size of the file for a new string. Size : Natural := Natural (Dirs.Size (Name)); subtype File_String is String (1 .. Size); -- Instantiate Direct_IO for our file type. package FIO is new Ada.Direct_IO (File_String); File : FIO.File_Type; Contents : File_String; begin FIO.Open (File, FIO.In_File, Name); FIO.Read (File, Contents); FIO.Close (File); Text_IO.Put (Contents); end Extra_IO.Read_File;