RosettaCodeData/Task/UTF-8-encode-and-decode/Elena/utf-8-encode-and-decode.elena

39 lines
838 B
Text
Raw Permalink Normal View History

2023-07-01 11:58:00 -04:00
import system'routines;
import extensions;
extension op : String
{
string printAsString()
{
console.print(self," ")
}
string printAsUTF8Array()
{
2024-03-06 22:25:12 -08:00
self.toByteArray().forEach::(b){ console.print(b.toString(16)," ") }
2023-07-01 11:58:00 -04:00
}
string printAsUTF32()
{
2024-03-06 22:25:12 -08:00
self.toArray().forEach::(c){ console.print("U+",c.toInt().toString(16)," ") }
2023-07-01 11:58:00 -04:00
}
}
public program()
{
"A".printAsString().printAsUTF8Array().printAsUTF32();
console.printLine();
"ö".printAsString().printAsUTF8Array().printAsUTF32();
console.printLine();
"Ж".printAsString().printAsUTF8Array().printAsUTF32();
console.printLine();
"€".printAsString().printAsUTF8Array().printAsUTF32();
console.printLine();
"𝄞".printAsString().printAsUTF8Array().printAsUTF32();
console.printLine();
}