Unicode和UTF - 8主要有以下區別
概念范疇
- Unicode:是字符集 。它為世界上幾乎所有的字符(包括各國文字、標點符號、特殊符號等)分配了唯一的編號,這個編號也叫碼位、碼點,比如“中”字的Unicode碼點是U+4E2D 。它規定了字符的抽象表示,只關注字符與數字編號的對應關系,不涉及具體如何在計算機中存儲和傳輸 。
- UTF - 8:是編碼規則 。它規定了如何將Unicode中的碼點轉換為字節序列,也就是確定了字符在計算機中實際存儲和傳輸時的二進制形式。
存儲方式
- Unicode:通常用16位(2個字節)或32位(4個字節)來表示一個字符。比如ASCII碼范圍內的英文字符,原本用1個字節表示,在Unicode中會用2個字節表示(高位補0 ),這可能造成存儲空間的浪費 。
- UTF - 8:是可變長編碼。它根據字符的不同&#