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}}== |