對URL進行編碼(UTF 8)

2021-04-29 12:47:18 字數 396 閱讀 7900

最近由於專案需要,寫了乙個函式專門對url裡的中文引數行編碼,網頁那邊是用的utf-8編碼集的,所以在編碼之前必須把字串轉換成utf-8的再進編碼。

大家都知道在url位址裡是不可傳中文字元的,因此如果你要url位址裡傳帶有中文字元的引數那就必須對它進行編碼。其實編碼是很簡單的,只是將字串中的每個字元轉換成16進製制的用%隔開就行了。注意我這個函式是utf-8的,如果你需要其它編碼集的可以自行修改,最重要的是明白它是怎樣進行編碼的。

用法介紹:

tchar sztext = text("我愛你");

tchar szencode[255];

urlencode(sztext, szencode, sizeof(szencode));

編碼後的字串就儲存在szencode陣列中。

介紹utf8編碼

utf8並不算是一種電腦編碼,而是一種儲存和傳送的格式,如前所述,每個unicode ucs字元都以 2或4個bytes來儲存,看看以下的比較 以 i am chinese 為例 用ansi儲存 12 bytes 用unicode ucs2儲存 24 bytes 2 bytes header 用uc...

UTF8編碼 解碼

參考文件 rfc3629標準.對於任意乙個字,都可以用乙個唯一碼 unicode碼,由標準編制 表示,在應用過程中,需要對碼進行編碼.常用的編碼方式為utf 8.utf 8採用類似於ip位址分配的機制.即對於不同範圍的unicode碼,採用不同的模板進行編碼.流程概述為 2.1 查表獲取unicod...

對UTF8編碼的初步認識

網路中有很多地方都有採用utf8編碼,由於要編寫與郵件服務端有關的程式,而郵件服務端有些地方用到了utf8編碼,所以對它有了初步的認識!它其實和unicode是同類,就是在編碼方式上不同!首先utf8編碼後的大小是不一定,不像unicode編碼後的大小是一樣的!我們先來看unicode的編碼 乙個英...