UTF-8 encode and decode: Difference between revisions

Content deleted Content added
added go
Line 157:
T
</lang>
 
=={{header|Go}}==
<lang go>package main
 
import (
"fmt"
"unicode/utf8"
)
 
func utf8encode(codepoint rune) []byte {
buffer := make([]byte, 4)
length := utf8.EncodeRune(buffer, codepoint)
return buffer[:length]
}
 
func utf8decode(bytes []byte) rune {
result, _ := utf8.DecodeRune(bytes)
return result
}
 
func main() {
fmt.Printf("%-7s %7s\t%s\t%s\n", "Char", "Unicode", "UTF-8 encoded", "Decoded");
for _, codepoint := range []rune{'A', 'ö', 'Ж', '€', '𝄞'} {
encoded := utf8encode(codepoint)
decoded := utf8decode(encoded)
fmt.Printf("%-7c U+%04X\t%-12X\t%c\n", codepoint, codepoint, encoded, decoded)
}
}</lang>
{{out}}
<pre>
Char Unicode UTF-8 encoded Decoded
A U+0041 41 A
ö U+00F6 C3B6 ö
Ж U+0416 D096 Ж
€ U+20AC E282AC €
𝄞 U+1D11E F09D849E 𝄞
</pre>
 
=={{header|Java}}==