华为机试练习---按字节数截取字符串
2014-09-02 21:22
239 查看
package interview; import java.io.UnsupportedEncodingException; import java.util.Scanner; /** * 输入一个字符串和字节数,按照字节数截取字符串。汉字两个字节,不能拆开 * 如: * 输入:我JAVA是ABC 6 * 输出:我JAVA * 输入:我JAVA是ABC 7 * 输出:我JAVA * @author USER * */ public class CutStringByBytes { public static void main(String[] args) { Scanner in = new Scanner(System.in); String string = in.next(); int len = in.nextInt(); try { cutString(string,len); } catch (UnsupportedEncodingException e) { // TODO Auto-generated catch block e.printStackTrace(); } } private static void cutString(String str, int len) throws UnsupportedEncodingException { StringBuffer sb = new StringBuffer(); int count = 0;//存储字节数 if (len >0 && len <= str.getBytes().length) { for (int i = 0; i < str.length(); i++) { int curSize = String.valueOf(str.charAt(i)).getBytes().length; if (curSize > 1) { count += 2; }else { count++; } if (count > len) { break; } sb.append(str.charAt(i)); } } System.out.println(sb.toString()); } }
相关文章推荐
- 【华为机试】按字节截取字符串
- 华为机试:按字节截取字符串
- 华为机试-按字节截取字符串
- 华为机试: 按字节截取字符串、超长正整数相加
- 【华为OJ】【088-按字节截取字符串】
- 华为OJ:按字节截取字符串
- 华为机试---字符串运用-密码截取
- 【华为机试】字符串运用-密码截取
- 华为OJ——按字节截取字符串
- 华为OJ——按字节截取字符串
- 24-IO流-70-IO流(练习-按字节截取字符串)
- [华为OJ--C++]088-按字节截取字符串
- 华为机试:统计每个月兔子的总数、 字符串运用-密码截取
- IO练习--按字节截取字符串
- 华为机试-字符串运用密码截取
- 华为OJ——按字节截取字符串
- 华为OJ(按字节截取字符串)
- 华为机试 - 字符串去重复字节/字符串去连续重复字节
- java中使用字节方式截取字符串
- 截取包含多字节字符的字符串