UTF-8 encode and decode: Difference between revisions

Content added Content deleted
(Added solution for D)
Line 157: Line 157:
T
T
</lang>
</lang>

=={{header|D}}==
<lang D>import std.conv;
import std.stdio;

immutable CHARS = ["A","ö","Ж","€","𝄞"];

void main() {
writeln("Character Code-Point Code-Units");
foreach (c; CHARS) {
auto bytes = cast(ubyte[]) c; //The raw bytes of a character can be accessed by casting
auto unicode = cast(uint) to!dstring(c)[0]; //Convert from a UTF8 string to a UTF32 string, and cast the first character to a number
writefln("%s %7X [%(%X, %)]", c, unicode, bytes);
}
}</lang>

{{out}}
<pre>Character Code-Point Code-Units
A 41 [41]
ö F6 [C3, B6]
Ж 416 [D0, 96]
€ 20AC [E2, 82, AC]
𝄞 1D11E [F0, 9D, 84, 9E]</pre>


=={{header|Go}}==
=={{header|Go}}==