2014-12-04 62 views

回答

1

該特定字符的長度總是3個字節,但其他字符會有所不同。 Unicode字符長度爲1-4字節。 'UTF-8'中的8只意味着它使用8位代碼單元

Wikipedia page on UTF-8提供了一個很好的概述如何工作。基本上,第一個字節的第一位告訴你該字符將有多長的字節長度。例如,如果第一個字節的第一位是0,如01111111,那麼這意味着這個字符只有一個字節長(在UTF-8中,這些是ASCII字符)。如果前中的第一位是110,則表示該字符長度爲兩個字節。維基百科頁面中的圖表提供了一個很好的例子。

還有this question,它也有一些很好的答案。

3

它是安全的假設,特定字符將始終爲三個字節長,與平臺無關。

但UTF-8中的Unicode字符可以是一個字節,兩個字節,三個字節或甚至四個字節長,所以不能,如果您將任何字符轉換爲UTF-8,那麼它會來輸出爲三個字節。

相關問題