情況1:多字符集(gb2312)
列印字串,要求首先對字串進行截取只保留92個字符,然后列印到指定區域(大小固定)。
gb2312英文一個字符,中文倆個字符很好截取
簡單例子,截取10個字符(中文自動前移一位截取)
src = "123456789中0"截取前
des = "123456789"截取后
先要求修改 使用utf-16
情況2:unicode(utf-16)
列印字串,要求首先對字串進行截取只保留92個字符,然后列印到指定區域(大小固定)。
src = L"123456789中0"截取前
des = L"123456789"截取后
目的utf-16中截取后的字串與gb2312先相同
問題涉及:
1.除了0-127編碼,在gbk編碼中(特別是gb18030)其他編碼對應的是不是都是倆個字符?
2.unicode編碼從0x0080開始之后的編碼在gb18030中有的,是不是都是倆字符?
uj5u.com熱心網友回復:
參考:https://blog.csdn.net/linyuanxing/article/details/3453650?utm_medium=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromMachineLearnPai2-1.control&depth_1-utm_source=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromMachineLearnPai2-1.controluj5u.com熱心網友回復:
我的問題是雙位元組的字符數量 到 單位元組字符數量換算。想知道這是怎么對應的。
比如° 這個符號 在gbk中是 a1e3雙字符,在unicode中0x00b0單字符。
unicode中的常規中文字符編碼范圍內的都好說,直接轉成2個字符就行了,但是初次之外的應該怎么判斷轉換
uj5u.com熱心網友回復:
https://m.baidu.com/from=1012852q/bd_page_type=1/ssid=0/uid=0/pu=usm%401%2Csz%40224_220%2Cta%40iphone___11_13.9/baiduid=4EB47D13416CC999D38774F15458E460/w=0_10_/t=iphone/l=1/tc?ref=www_iphone&lid=10497446139898289207&order=1&fm=alop&isAtom=1&is_baidu=0&dict=-1&tj=bk_polysemy_1_0_10_lNaN&clk_info=%7B%22tplname%22%3A%22bk_polysemy%22%2C%22srcid%22%3A1547%7D&wd=&eqid=91ae6ba5796edc371000000160222225&w_qd=IlPT2AEptyoA_yk66wEaqwK64lxSbXjioUdnse7-&bdver=2&tcplug=1&sec=10013&di=f22a097a700c47d2&bdenc=1&tch=124.0.246.204.0.0&nsrc=https://bbs.csdn.net/topics/FydYV5L2%2FeGw6EM0C%2BbozP%2BEFpMajWLBTNRq2ogTUyRV8Rf2c5CLm4zwwW1OQtMrERScOGdFDJqOC3dyOioI9UR80W%2F1t%2FXjpxuc0Oxo2YtCUCxlNvVPShpym%2FGFHJ3pzoAY6jV5J%2F%2FKeZuFaScj%2FQ%3D%3Duj5u.com熱心網友回復:
好吧。那就問這樣一個問題吧!gb18030編碼下,中文是不是都算做2個字符,不論占用幾個位元組?
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/258216.html
標籤:其它技術問題
上一篇:求助
下一篇:學校的這道oj題為什么通過不了
