按字节截取汉字字符串,不截取半个汉字。
/**
*
* @param str 要截取的字符串
* @param num 要截取的个数(字节)
* @return 截取后的字符串
*/
public static String subStrOfByte(String str, int num) {
byte[] b = str==null?new byte[0]:str.getBytes();
int i,n=0,index=0,bl=b.length;
index=bl>num?num:bl;
for(i=0;i<index;i++){
if(b[i]<0){
n++;
}
}
String str1=null;
if(n%2==0){
str1=new String(b,0,i);
}else{
str1=new String(b,0,i-1);
}
return str1;
}