Data update
This commit is contained in:
parent
5150844a7d
commit
4bb20c9b71
7735 changed files with 38060 additions and 199180 deletions
|
|
@ -1,49 +0,0 @@
|
|||
with Ada.Strings.Fixed; use Ada.Strings.Fixed;
|
||||
with Ada.Strings.UTF_Encoding.Wide_Wide_Strings;
|
||||
with Ada.Integer_Text_IO;
|
||||
with Ada.Text_IO;
|
||||
with Ada.Wide_Wide_Text_IO;
|
||||
|
||||
procedure UTF8_Encode_And_Decode
|
||||
is
|
||||
package TIO renames Ada.Text_IO;
|
||||
package WWTIO renames Ada.Wide_Wide_Text_IO;
|
||||
package WWS renames Ada.Strings.UTF_Encoding.Wide_Wide_Strings;
|
||||
|
||||
function To_Hex
|
||||
(i : in Integer;
|
||||
width : in Natural := 0;
|
||||
fill : in Character := '0') return String
|
||||
is
|
||||
holder : String(1 .. 20);
|
||||
begin
|
||||
Ada.Integer_Text_IO.Put(holder, i, 16);
|
||||
declare
|
||||
hex : constant String := holder(Index(holder, "#")+1 .. holder'Last-1);
|
||||
filled : String := Natural'Max(width, hex'Length) * fill;
|
||||
begin
|
||||
filled(filled'Last - hex'Length + 1 .. filled'Last) := hex;
|
||||
return filled;
|
||||
end;
|
||||
end To_Hex;
|
||||
|
||||
input : constant Wide_Wide_String := "AöЖ€𝄞";
|
||||
begin
|
||||
TIO.Put_Line("Character Unicode UTF-8 encoding (hex)");
|
||||
TIO.Put_Line(43 * '-');
|
||||
for WWC of input loop
|
||||
WWTIO.Put(WWC & " ");
|
||||
declare
|
||||
filled : String := 11 * ' ';
|
||||
unicode : constant String := "U+" & To_Hex(Wide_Wide_Character'Pos(WWC), width => 4);
|
||||
utf8_string : constant String := WWS.Encode((1 => WWC));
|
||||
begin
|
||||
filled(filled'First .. filled'First + unicode'Length - 1) := unicode;
|
||||
TIO.Put(filled);
|
||||
for C of utf8_string loop
|
||||
TIO.Put(To_Hex(Character'Pos(C)) & " ");
|
||||
end loop;
|
||||
TIO.New_Line;
|
||||
end;
|
||||
end loop;
|
||||
end UTF8_Encode_And_Decode;
|
||||
Loading…
Add table
Add a link
Reference in a new issue