- public static int trimGBK(byte[] buf,int n){
- int num = 0;
- boolean bChineseFirstHalf = false;
- for(int i=0;i<n;i++)
- {
- if(buf[i]<0 && !bChineseFirstHalf){
- bChineseFirstHalf = true;
- }else{
- num++;
- bChineseFirstHalf = false;
- }
- }
- return num;
复制代码
上面代码的第六行,If语句中的buf<0,为什么做出这样的判断,在什么情况下一个字节才能小于0? |