我該怎麼做基本的字符串操作,如strcat的,strlen的和...在UTF-8字符串,在C.ICU和基本opreation的UTF-8字符串
ICU庫我發現很多的UTF功能-16但不適用於UFT-8。
我該怎麼做基本的字符串操作,如strcat的,strlen的和...在UTF-8字符串,在C.ICU和基本opreation的UTF-8字符串
ICU庫我發現很多的UTF功能-16但不適用於UFT-8。
ICU提供一組C語言和用於處理UTF-8編碼字符串的函數。從這裏開始:http://userguide.icu-project.org/strings/utf-8
您可以使用常規的strcat
和類似的功能與UTF-8。至於長度,如果你的意思是數字你可以做mbstowcs(NULL, s, 0)
。
mbstowcs如果將其他編碼(如ANSI)轉換爲寬字符。不是爲了獲得字符串的長度。它只會返回創建新的UTF-16字符串所需的空間。 – user335870
@ user335870:你之前說過這個代碼不行嗎? –
是的,我知道,我看過這個頁面,但重點是,我找不到strlen和其他功能。我在哪裏可以找到完整的基於UTF-8的函數列表? – user335870
你想要字節長度或字符數?無論哪種方式,您都需要首先處理規範化與否。 – uchuugaka