package my0414; import java.io.UnsupportedEncodingException; public class StringText { /** * @param args * @throws UnsupportedEncodingException */ public static void main(String[] args) throws UnsupportedEncodingException { String str="k%11!*好aa!、小一ki大0家好"; int m=trimGBK(str.getBytes(),8); System.out.println(str.substring(0, m)); System.out.println(mysubString(str,8)); } public static int trimGBK(byte[] buf,int n){ boolean chinese=false; int num=0; for(int i=0;i<n;i++){ System.out.println(buf[i]); if(buf[i]<0&&!chinese){ chinese=true; }else{ num++; chinese=false; } } return num; } public static String mysubString(String str,int sublen){ String subStr=str.substring(0,sublen); int tempSublen=sublen; int subStrlen=subStr.getBytes().length; while(subStrlen>sublen){ tempSublen--; subStrlen=str.substring(0,tempSublen).getBytes().length; } return str.substring(0,tempSublen); } }