UTF-8修改版获取编码字节数是根据字节头来获取的。
UTF-8修改版编码字节获取方式如下:
第一个字节是0开头,是读一个字节,例如:01101001
第一个字节是110 开头, 第二个字节是10开头。是读两个字节,例如:11001101 10101011
第一个字节是1110 开头, 第二个字节是10开头 第三个字节也是10开头。 是读三个字节,例如:11101010 10100101 10100101
但是如果碰上如下情况怎么读?
情况1:1111开头的字节,例如:11110101
情况2:第一个字节10开头的字节,例如:10010100
情况3:第一个字节110开头第二个字节不是10开头的字节,例如:11001100 01001001
情况4:第一个字节1110开头,第二个字节或第三个字节不是10开头的字节,例如:11100001 11001001 01101001
像以上情况的话,编码是怎么判断获取字节数的?
是还能获取呢?还是不能继续获取?
还是原来获取方式的话,是不是就是出现乱码呢?
|