怎么办呢

解决方案 »

  1.   

    字符全部都是两个字节的UNICODE编码,别想着GB2312的一个汉字两字节,一个字母一字节了
      

  2.   

    这个没办法判断,需要连续查找,>128的字节是否是双数,连续的2个>128的是双字节字符中的一部分。第二个和第一个配对一起就不会有半个字的情况。
      

  3.   

    传进来的是字符串,我处理的时候转成字节数组了
    byte[] bytes = Encoding.GetEncoding("gb2312").GetBytes(str);
    我想判断这个bytes数组里的某一位上是汉字的前半部分还是后半部分
      

  4.   

    为什么要用gb2312来编码呢,用gb2312做内部编码处理多麻烦呀,没有明确的判断方法,找到前一个最近的小于128的值,看位置是单数还是双数