【Java笔试题】按字节截取字符串
2016-11-29 13:32
246 查看
1、题目
定义一个方法,按照最大的字节数来截取子串。例如,对“ab你好”,如果取三个字节,那么子串就是ab与“你”字的一半,另一半就要舍弃;如果取四个字节,那么子串就是“ab你”,取五个字节,还是“ab你”。
2、Java代码
定义一个方法,按照最大的字节数来截取子串。例如,对“ab你好”,如果取三个字节,那么子串就是ab与“你”字的一半,另一半就要舍弃;如果取四个字节,那么子串就是“ab你”,取五个字节,还是“ab你”。
2、Java代码
import java.io.IOException; public class CutString { public static void main(String[] args) throws IOException { String str = "hit5211314"; int len = str.getBytes("utf-8").length; for (int x = 0; x < len; x++) { System.out.println("截取" + (x + 1) + "个字符 : " + cutStringByU8Byte(str, x + 1)); } } public static String cutStringByU8Byte(String str, int len) throws IOException { //用utf-8格式截取 byte[] buf = str.getBytes("utf-8"); int count = 0; for (int x = len - 1; x >= 0; x--) { if (buf[x] < 0) count++; else break; } if (count % 3 == 0) return new String(buf, 0, len, "utf-8"); else if (count % 3 == 1) return new String(buf, 0, len - 1, "utf-8"); else return new String(buf, 0, len - 2, "utf-8"); } }
相关文章推荐
- 【Java笔试题】截取字符串并按字节分别输出
- Java笔试之按字节截取字符串
- java按字节截取带有汉字的字符串的解法
- Java实现按字节长度截取字符串的方法
- Java字符串按字节数截取长度
- Java按字节长度截取字符串
- java中按字节数的长度来截取字符串,并以...来忽略
- "Unicode"编码,java实现一个按字节截取字符串的子串的方法
- java按字节截取带有汉字的字符串的解法
- java按指定的字节Byte的起始位置截取长度截取字符串
- Java 测试,按字节数截取字符串,不能输出半个中文
- 讲字符串按照字节截取 JAVA
- Java按字节长度截取字符串
- Java实现按字节长度截取字符串
- Java 编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串
- java按字节截取中英文混合字符串
- 用Java实现按字节长度截取字符串的方法
- Java实现按字节长度截取字符串的方法
- Java 按字节截取字符串