2012-04-28 14 views

Odpowiedz

54

Unicode to sposób na przypisywanie unikalnych liczb (nazywanych punktami kodowymi) do postaci z niemal wszystkich języków używanych dzisiaj, a także wielu innych znaków, takich jak symbole matematyczne. Istnieje wiele sposobów kodowania ciągów Unicode jako bajtów, takich jak UTF-8 i UTF-16.

ASCII przypisuje wartości tylko do 128 znaków (a-z, A-Z, 0-9, spacja, niektóre znaki interpunkcyjne i niektóre znaki sterujące).

Dla każdego znaku, który ma wartość ASCII, kodowy kod Unicode i wartość ASCII tego znaku są takie same.

W większości nowoczesnych aplikacji lepiej jest używać ciągów Unicode niż ASCII. Umożliwi to na przykład użytkownikom z akcentowanymi znakami w nazwie lub adresie oraz lokalizację interfejsu na języki inne niż angielski.

+0

Ale jak używać znaków Unicode? Mogę używać znaków ASCII po prostu przez typowanie znaków w intach, ale czy mogę zrobić to samo dla znaków Unicode? – Ghost

+0

@Ghost: Nie jest jasne, dlaczego musisz przesyłać znaki do ints. Co próbujesz zrobić? –

+0

mówię, że aby uzyskać wartość ascii postaci, potrzebuję jej typować: char a = 'a'; int b = (int) a // wartość ascii – Ghost

14

Pierwsze 128 Unicode punktów kodowych są takie same jak ASCII. Następnie mają 100 000 lub więcej.

Istnieją dwa popularne formaty dla Unicode, UTF-8, który wykorzystuje 1-4 bajty dla każdej wartości (czyli dla pierwszych 128 znaków, UTF-8 jest dokładnie taki sam jak ASCII) i UTF-16, który używa 2 lub 4 bajty.

Powiązane problemy