• 已解决 53845 个问题
  • 已帮助 5918 位优秀工程师

utf8 , gb2312转码问题

aple0807 2021-06-16 浏览量:167
网上查到的utf8转gb2312代码, 都会输入一个字符串长度的参数,代码也是按长度转换的,为什么不是像其他字串一样 用0来作为长度判定呢? UTF-8中的字符编码值有0吗?
0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • 其实用char * 来接收UTF8编码数据,在处理中有许多细节需要注意

    1. 这时单个字节并不一定是完整字符,很多时候是一个字符的部分

    2. 字节数和字符数不是统一的

    你这里所谓的长度是字节数长度还是字符数?

    即使gb2312编码也是有类似问题的,字符串 字节数和字符数相等只存在于ASCII编码下。


    从字符串 结尾判断来说,还是可以用 '0' 的。

    • 发布于 2021-06-16
    • 举报
    • 评论 0
    • 0
    • 0

其他答案 数量:2
  • UTF-8由4种编码方式实现,即UTF8-1 / UTF8-2 / UTF8-3 / UTF8-4,只有UTF8-1可以是0
    • 发布于2021-06-21
    • 举报
    • 评论 0
    • 0
    • 0

  • 编码方式不一样啊,这是一种统一的规定,不是想怎么写就怎么写的
    • 发布于2021-06-23
    • 举报
    • 评论 0
    • 0
    • 0

utf8 , gb2312转码问题