笔试题:按字节数来截取字符串
je上看到笔试题:
http://wangyu.iteye.com/blog/190753
//package com.liany.demo.cutstring;/** * 按字节数来截取字符串,遇到汉字要整个字截取,不能只截取一半 * @author liany * 2012-04-20 */public class CutString { /** * @param args */public static void main(String[] args) {String str = "1我45人有的";System.out.println(cutString(str, 1));System.out.println(cutString(str, 2));System.out.println(cutString(str, 3));System.out.println(cutString(str, 4));System.out.println(cutString(str, 5));System.out.println(cutString(str, 6));System.out.println(cutString(str, 7));System.out.println(cutString(str, 8));}/** * 按字节数来截取字符串,遇到汉字要整个字截取,不能只截取一半 * @param str原始字符串 * @param bytes要截取的字节数 */public static String cutString(String str, int bytes){int i = 0;//字符串序号int count = 0;//累计字节数while(count < bytes){byte[] b = (str.charAt(i++)+"").getBytes();count += b.length;}return str.substring(0, i);}}?截取的结果是:
1
1我
1我
1我4
1我45
1我45人
1我45人
1我45人有