青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

woaidongmao

文章均收錄自他人博客,但不喜標題前加-[轉(zhuǎn)貼],因其丑陋,見諒!~
隨筆 - 1469, 文章 - 0, 評論 - 661, 引用 - 0
數(shù)據(jù)加載中……

判斷字符串是否UTF8編碼

UTF8是以8bits1Bytes為編碼的最基本單位,當然也可以有基于16bits32bits的形式,分別稱為UTF16UTF32,但目前用得不多,而UTF8則被廣泛應用在文件儲存和網(wǎng)絡傳輸中。
  編碼原理
  先看這個模板:
  UCS-4 range (hex.) UTF-8 octet sequence (binary)
  0000 0000-0000 007F 0xxxxxxx
  0000 0080-0000 07FF 110xxxxx 10xxxxxx
  0000 0800-0000 FFFF 1110xxxx 10xxxxxx 10xxxxxx
  0001 0000-001F FFFF 11110xxx 10xxxxxx 10xxxxxx 10xxxxxx
  0020 0000-03FF FFFF 111110xx 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx
  0400 0000-7FFF FFFF 1111110x 10xxxxxx ... 10xxxxxx
  編碼步驟:
  1) 首先確定需要多少個8bits(octets)
  2) 按照上述模板填充每個octets的高位bits
  3) 把字符的bits填充至x中,字符順序:低位高位,UTF8順序:最后一個octet的最末位x→第一個octet最高位x
  根據(jù)UTF8編碼,最多可由6個字節(jié)組成,所以UTF81-6字節(jié)編碼組成
  C++代碼如下:
  int IsTextUTF8(char* str,ULONGLONG length)
  {
  int i;
  DWORD nBytes=0;//UFT8可用1-6個字節(jié)編碼,ASCII用一個字節(jié)
  UCHAR chr;
  BOOL bAllAscii=TRUE; //如果全部都是ASCII, 說明不是UTF-8
  for(i=0;i<length;i++)
  {
  chr= *(str+i);
  if( (chr&0x80) != 0 ) // 判斷是否ASCII編碼,如果不是,說明有可能是UTF-8,ASCII7位編碼,但用一個字節(jié)存,最高位標記為0,o0xxxxxxx
  bAllAscii= FALSE;
  if(nBytes==0) //如果不是ASCII,應該是多字節(jié)符,計算字節(jié)數(shù)
  {
  if(chr>=0x80)
  {
  if(chr>=0xFC&&chr<=0xFD)
  nBytes=6;
  else if(chr>=0xF8)
  nBytes=5;
  else if(chr>=0xF0)
  nBytes=4;
  else if(chr>=0xE0)
  nBytes=3;
  else if(chr>=0xC0)
  nBytes=2;
  else
  {
  return FALSE;
  }
  nBytes--;
  }
  }
  else //多字節(jié)符的非首字節(jié),應為 10xxxxxx
  {
  if( (chr&0xC0) != 0x80 )
  {
  return FALSE;
  }
  nBytes--;
  }
  }
  if( nBytes > 0 ) //違返規(guī)則
  {
  return FALSE;
  }
  if( bAllAscii ) //如果全部都是ASCII, 說明不是UTF-8
  {
  return FALSE;
  }
  return TRUE;
  }

 

posted on 2011-08-27 15:20 肥仔 閱讀(4288) 評論(3)  編輯 收藏 引用 所屬分類: 字符編碼

評論

# re: 判斷字符串是否UTF8編碼  回復  更多評論   

這個很有用
2011-08-28 08:25 | 天下

# re: 判斷字符串是否UTF8編碼  回復  更多評論   

試一下輸入gbk碼的“聯(lián)通”二字,發(fā)現(xiàn)判斷的結(jié)果是utf-8編碼,所以該判斷函數(shù)存在問題
2015-11-02 16:52 | liuyuananfang

# re: 判斷字符串是否UTF8編碼  回復  更多評論   

有問題,輸入 GBK的 “藍色” ,判斷的結(jié)果是utf-8編碼。
2016-01-09 14:55 | ddd
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            久久久久久9| 一区二区欧美日韩| 99精品福利视频| 一区二区毛片| 亚洲一区激情| 久久精品水蜜桃av综合天堂| 久久夜色精品亚洲噜噜国产mv| 你懂的成人av| 一区二区高清视频在线观看| 欧美一区二区三区啪啪| 欧美成人第一页| 欧美日韩视频在线一区二区| 国产欧美在线观看一区| 亚洲人成在线播放| 亚洲欧美视频一区二区三区| 久久人人爽人人| 亚洲精品自在久久| 欧美专区中文字幕| 欧美日韩免费区域视频在线观看| 国产一区二区三区不卡在线观看| 亚洲另类春色国产| 久久精品色图| 日韩视频专区| 蜜臀91精品一区二区三区| 国产精品成人aaaaa网站| 亚洲综合色在线| 老司机午夜精品| 国产日韩精品在线| 亚洲一区不卡| 亚洲高清视频一区二区| 亚洲欧美另类国产| 欧美日本韩国一区| 亚洲国产导航| 久久免费偷拍视频| 午夜精品久久| 国产精品视频精品| 国产精品99久久久久久有的能看 | 亚洲大片在线观看| 亚洲欧美日韩直播| 亚洲三级影片| 欧美成人激情视频免费观看| 国产午夜精品美女毛片视频| 国产精品99久久久久久人| 欧美黄色一区| 久久久中精品2020中文| 国产亚洲欧美日韩美女| 香蕉久久夜色| 亚洲一级黄色| 国产精品久久久久秋霞鲁丝| 中国日韩欧美久久久久久久久| 亚洲成色精品| 欧美ed2k| 亚洲日韩欧美视频| 亚洲第一在线综合网站| 久久这里只有精品视频首页| 国产在线观看精品一区二区三区 | 国产精品一区二区在线| 亚洲一区二区三区涩| 亚洲精品一区二区三区婷婷月| 欧美mv日韩mv国产网站app| 悠悠资源网久久精品| 免费日韩av| 免费看精品久久片| 99精品国产福利在线观看免费 | 欧美在线播放一区| 国产午夜久久| 米奇777在线欧美播放| 久久久人人人| 亚洲精选91| 在线亚洲观看| 国产一区视频观看| 欧美成人午夜激情在线| 欧美成年人视频网站| 99精品热视频只有精品10| 亚洲免费精品| 国产午夜精品久久久久久久| 久久亚洲图片| 欧美男人的天堂| 久久av红桃一区二区小说| 久久av资源网站| 日韩视频免费在线观看| 制服丝袜亚洲播放| 欧美一区1区三区3区公司| 在线观看视频免费一区二区三区 | 亚洲视频导航| 国产一区二区三区在线观看精品| 欧美成人a视频| 欧美网站大全在线观看| 欧美在线观看你懂的| 鲁大师影院一区二区三区| 亚洲午夜激情网页| 久久久久国产精品麻豆ai换脸| 亚洲欧洲另类国产综合| 99国产精品国产精品毛片| 国内精品视频在线播放| 亚洲精品系列| 黑人操亚洲美女惩罚| 亚洲狼人精品一区二区三区| 国产一区二区三区在线免费观看 | 亚洲美女黄色| 黄色av日韩| 一区二区三区高清视频在线观看| 伊人精品久久久久7777| 亚洲天堂av电影| 亚洲理论电影网| 久久久久久久999精品视频| 亚洲免费在线观看视频| 欧美国产日韩二区| 欧美aa国产视频| 国产日韩欧美在线视频观看| 亚洲精品欧美极品| 亚洲国产精品成人综合色在线婷婷| 亚洲视频中文| 一区二区三区高清在线观看| 久久婷婷成人综合色| 久久国产婷婷国产香蕉| 国产精品久久久亚洲一区 | 蜜臀av性久久久久蜜臀aⅴ四虎| 欧美日韩免费观看一区二区三区| 欧美freesex8一10精品| 国产一区二区三区在线观看免费 | 欧美天堂亚洲电影院在线播放| 欧美福利视频一区| 激情文学综合丁香| 欧美一级视频一区二区| 欧美在线日韩在线| 国产精品二区在线| 在线一区二区三区四区| 亚洲婷婷综合色高清在线| 欧美黄色aaaa| 亚洲精品久久久久久一区二区| 亚洲激情一区| 欧美高清在线视频观看不卡| 欧美激情久久久| 亚洲精品久久| 欧美日韩国产成人在线91| 欧美激情五月| 一区二区欧美在线| 欧美日韩在线免费| 一区二区三区欧美亚洲| 欧美色一级片| 一本色道久久综合| 欧美一区二区三区四区夜夜大片 | 一区二区三区四区在线| 亚洲第一精品夜夜躁人人爽| 久久综合国产精品| 亚洲国产欧美一区二区三区同亚洲| 亚洲国产精品传媒在线观看| 麻豆精品传媒视频| 亚洲日韩视频| 午夜欧美大尺度福利影院在线看| 国产精品久久久一区二区| 亚洲在线视频观看| 狂野欧美一区| 99精品视频一区二区三区| 欧美日韩在线免费| 欧美一区二区在线| 亚洲福利久久| 亚洲天天影视| 精东粉嫩av免费一区二区三区| 美女爽到呻吟久久久久| 日韩亚洲欧美成人一区| 欧美在线不卡视频| 亚洲国产一区二区三区高清 | 一区二区三区高清不卡| 欧美专区在线| 亚洲人成网站精品片在线观看 | 99re6热只有精品免费观看| 国产精品劲爆视频| 噜噜噜噜噜久久久久久91| 一区二区三区精品| 浪潮色综合久久天堂| 亚洲视频一区二区| 一色屋精品视频免费看| 欧美四级在线| 欧美成人精品在线观看| 亚洲综合丁香| 亚洲国产精品热久久| 久久大香伊蕉在人线观看热2| 亚洲人成7777| 国模私拍视频一区| 国产精品久久久久一区| 欧美高清视频一区二区| 久久精品二区亚洲w码| 欧美激情久久久| 久久久精品日韩| 午夜精品久久久久久久久| 亚洲伦理自拍| 亚洲高清视频一区| 好看的av在线不卡观看| 欧美午夜久久| 欧美二区在线看| 另类尿喷潮videofree| 午夜综合激情| 亚洲欧美在线x视频| 日韩视频在线免费观看| 亚洲国产精品久久久久秋霞影院| 久久久久久久高潮| 久久精品国产77777蜜臀| 亚洲男女自偷自拍图片另类|