今天去了一家面试遇到一个问题,不知道该怎么样解决!请高手指点一下!谢谢
已知:一个字符串和要截的位数,然后字符串返回!但要达到这样的效果!
比如:字符串:“我ABC” 要截取4位 效果:“我AB”
字符串:“我ABC你” 要截取6位 效果:“我ABC”
不能将一个中文的汉字截取成一般 比如“我ABC”+“你”的一半!要保留整个汉字!请兄弟们指教一下!谢谢!
已知:一个字符串和要截的位数,然后字符串返回!但要达到这样的效果!
比如:字符串:“我ABC” 要截取4位 效果:“我AB”
字符串:“我ABC你” 要截取6位 效果:“我ABC”
不能将一个中文的汉字截取成一般 比如“我ABC”+“你”的一半!要保留整个汉字!请兄弟们指教一下!谢谢!
解决方案 »
- 关于Ant 等
- 我用jsp读取mysql的text类型,怎样换行?急!在线等!
- 如何定义时间段并创建相应的数据表?
- 在Netbeans中加入组件????
- 怎么把一个结果集写入到一个excel文件下载到客户端??急!!!谢谢!
- 中文处理问题
- 请教一下大家,用什么软件开发jsp的?
- 哪里有一次就可以下载完所有或大部分Eclipse_Plugins?一个一个的下好烦人啊!先提供正确下载网址者独得100分!!
- java中catch异常后,再在catch块中重新抛出新异常系统无法捕获
- 使用IDEA,为什么项目启动后,点击debug按钮没有弹出四个选项的框?
- 急求:取出一个文件夹下面的所有子文件夹列表,java代码实现
- struts2中用户提交表单到类型转换到输入校验的执行顺序(2)
byte[] byteArray = new byte[count];
byte[] temp = str.getBytes();
int ii = 0;
for (int i = 0; i < count; i++) {
byteArray[i] = temp[i];
if (temp[i] < 0) {
ii++;
}
}
if (ii % 2 == 1) {
byteArray[count - 1] = ' ';
}
System.out.println(new String(byteArray).trim()); }
LZ放心使用吧:)
if(length>args.length())
length=args.length();
String output="";
byte[] b=args.getBytes();
if(length/2!=0){
if(b[length]<0)
length=length-1;
}
output=new String(b,0,length);
return output;
}
public String cut(String s, int n) {
String c="";
String d = "";
String[] b = s.split("");
for (int i = 0; i < b.length; i++) {
c = c + b[i];
if((c.getBytes().length)==n){
d = d + b[i];
break;
}else if((c.getBytes().length)>n){
break;
}
d = d + b[i];
}
return d;
} public static void main(String[] args) {
Cut cu = new Cut();
String a = cu.cut("a接口cd喊f", 4);
System.out.println(a);
}
}