A.11 Wide Text Input-Output and Wide Wide Text Input-Output
The packages Wide_Text_IO and Wide_Wide_Text_IO provide 
facilities for input and output in human-readable form. Each file is 
read or written sequentially, as a sequence of wide characters (or wide 
wide characters) grouped into lines, and as a sequence of lines grouped 
into pages. 
Static Semantics
The specification of package 
Wide_Text_IO is the same as that for Text_IO, except that in each Get, 
Look_Ahead, Get_Immediate, Get_Line, Put, and Put_Line subprogram, any 
occurrence of Character is replaced by Wide_Character, and any occurrence 
of String is replaced by Wide_String. 
Nongeneric 
equivalents of Wide_Text_IO.Integer_IO and Wide_Text_IO.Float_IO are 
provided (as for Text_IO) for each predefined numeric type, with names 
such as Ada.Integer_Wide_Text_IO, Ada.Long_Integer_Wide_Text_IO, Ada.Float_Wide_Text_IO, 
Ada.Long_Float_Wide_Text_IO.
 
The specification of package 
Wide_Wide_Text_IO is the same as that for Text_IO, except that in each 
Get, Look_Ahead, Get_Immediate, Get_Line, Put, and Put_Line subprogram, 
any occurrence of Character is replaced by Wide_Wide_Character, and any 
occurrence of String is replaced by Wide_Wide_String. 
Nongeneric 
equivalents of Wide_Wide_Text_IO.Integer_IO and Wide_Wide_Text_IO.Float_IO 
are provided (as for Text_IO) for each predefined numeric type, with 
names such as Ada.Integer_Wide_Wide_Text_IO, Ada.Long_Integer_Wide_Wide_Text_IO, 
Ada.Float_Wide_Wide_Text_IO, Ada.Long_Float_Wide_Wide_Text_IO.
 
The specification 
of package Wide_Text_IO.Wide_Bounded_IO is the same as that for Text_IO.Bounded_IO, 
except that any occurrence of Bounded_String is replaced by Bounded_Wide_String, 
and any occurrence of package Bounded is replaced by Wide_Bounded. The 
specification of package Wide_Wide_Text_IO.Wide_Wide_Bounded_IO is the 
same as that for Text_IO.Bounded_IO, except that any occurrence of Bounded_String 
is replaced by Bounded_Wide_Wide_String, and any occurrence of package 
Bounded is replaced by Wide_Wide_Bounded.
 
The specification 
of package Wide_Text_IO.Wide_Unbounded_IO is the same as that for Text_IO.Unbounded_IO, 
except that any occurrence of Unbounded_String is replaced by Unbounded_Wide_String, 
and any occurrence of package Unbounded is replaced by Wide_Unbounded. 
The specification of package Wide_Wide_Text_IO.Wide_Wide_Unbounded_IO 
is the same as that for Text_IO.Unbounded_IO, except that any occurrence 
of Unbounded_String is replaced by Unbounded_Wide_Wide_String, and any 
occurrence of package Unbounded is replaced by Wide_Wide_Unbounded. 
 
Ada 2005 and 2012 Editions sponsored in part by Ada-Europe