Bu sorunun eski olduğunu ve zaten kabul edilmiş bir cevabı olduğunu biliyorum, ancak birkaç örnek sunmak istiyorum (birisine faydalı olacağını umuyorum).
Bildiğim kadarıyla eski ASCII karakterleri karakter başına bir bayt aldı.
Sağ. Aslında, ASCII 7 bit kodlama olduğundan 128 kodu (95'i yazdırılabilir) destekler, bu nedenle yalnızca yarım bayt kullanır (bu bir anlam ifade ediyorsa).
Unicode karakteri kaç bayt gerektirir?
Unicode karakterleri kod noktalarıyla eşleştirir. Bunların nasıl kodlanacağını tanımlamaz. Bir metin dosyası Unicode karakterler içermez, ancak Unicode karakterleri temsil edebilecek bayt / oktetler içerir.
Bir Unicode karakterinin herhangi bir dilden mümkün olan her karakteri içerebileceğini varsayıyorum - doğru muyum?
Hayır. Ama neredeyse. Temel olarak evet. Ama yine de hayır.
Karakter başına kaç bayta ihtiyaç var?
2. sorunuzla aynı.
Ve UTF-7, UTF-6, UTF-16 vb. Ne anlama geliyor? Bir çeşit Unicode sürümü var mı?
Hayır, kodlamalar bunlar. Bayt / sekizlilerin Unicode karakterlerini nasıl temsil etmesi gerektiğini tanımlarlar.
Birkaç örnek. Bunlardan bazıları tarayıcınızda görüntülenemiyorsa (büyük olasılıkla yazı tipi bunları desteklemediğinden), bir resim görmek için http://codepoints.net/U+1F6AA
( 1F6AA
onaltılık kod noktasıyla değiştirin ) seçeneğine gidin.
- U + 0061 LATİN KÜÇÜK MEKTUP A:
a
- Nº: 97
- UTF-8: 61
- UTF-16: 00 61
- U + 00A9 TELİF HAKKI İŞARETİ:
©
- Nº: 169
- UTF-8: C2 A9
- UTF-16: 00 A9
- U + 00AE KAYITLI İŞARET:
®
- Nº: 174
- UTF-8: C2 AE
- UTF-16: 00 AE
- U + 1337 ETİYOPİK HAZIR PHWA:
ጷ
- Nº: 4919
- UTF-8: E1 8C B7
- UTF-16: 13 37
- U + 2014 EM DASH:
—
- Nº: 8212
- UTF-8: E2 80 94
- UTF-16: 20 14
- MİLENİN İŞARETİ BAŞINA U + 2030:
‰
- N: 8240
- UTF-8: E2 80 B0
- UTF-16: 20 30
- U + 20AC EURO İŞARETİ:
€
- Nº: 8364
- UTF-8: E2 82 AC
- UTF-16: 20 AC
- U + 2122 TİCARET İŞARETİ İŞARETİ:
™
- Nº: 8482
- UTF-8: E2 84 A2
- UTF-16: 21 22
- U + 2603 KARDAN ADAM:
☃
- N: 9731
- UTF-8: E2 98 83
- UTF-16: 26 03
- U + 260E SİYAH TELEFON:
☎
- N: 9742
- UTF-8: E2 98 8E
- UTF-16: 26 0E
- YAĞMUR DAMLASI İLE U + 2614 ŞEMSİYE:
☔
- N: 9748
- UTF-8: E2 98 94
- UTF-16: 26 14
- U + 263A BEYAZ GÜLÜMSEME YÜZÜ:
☺
- No: 9786
- UTF-8: E2 98 BA
- UTF-16: 26 3A
- U + 2691 SİYAH BAYRAK:
⚑
- Nº: 9873
- UTF-8: E2 9A 91
- UTF-16: 26 91
- U + 269B ATOM SEMBOLÜ:
⚛
- N: 9883
- UTF-8: E2 9A 9B
- UTF-16: 26 9B
- U + 2708 UÇAK:
✈
- N: 9992
- UTF-8: E2 9C 88
- UTF-16: 27 08
- U + 271E GÖLGELİ BEYAZ LATİN ÇAPRAZ:
✞
- Nº: 10014
- UTF-8: E2 9C 9E
- UTF-16: 27 1E
- U + 3020 POSTA İŞARETİ YÜZÜ:
〠
- Nº: 12320
- UTF-8: E3 80 A0
- UTF-16: 30 20
- U + 8089 CJK UNIFIED İDEOGRAF-8089:
肉
- No: 32905
- UTF-8: E8 82 89
- UTF-16: 80 89
- U + 1F4A9 POO Yığını:
💩
- N: 128169
- UTF-8: F0 9F 92 A9
- UTF-16: D8 3D DC A9
- U + 1F680 ROKET:
🚀
- No: 128640
- UTF-8: F0 9F 9A 80
- UTF-16: D8 3D DE 80
Tamam taşınıyorum ...
Eğlenceli gerçekler: