public static java.lang.String substring(java.lang.String value, int length)
字符串截取.
参数:
value
-
length
-
返回:
/**
*
* 字符串截取.
* @param value
* @param length
* @return
*/
public static String substring(String value,int length) {
if(value==null || value.length()==0){
return "";
}
StringBuffer sb = new StringBuffer();
int valueLength = 0;
String chinese = "[\u0391-\uFFE5]";
/* 获取字段值的长度,如果含中文字符,则每个中文字符长度为2,否则为1 */
for (int i = 0; i < value.length(); i++) {
/* 获取一个字符 */
String temp = value.substring(i, i + 1);
/* 判断是否为中文字符 */
if (temp.matches(chinese)) {
/* 中文字符长度为2 */
valueLength += 2;
} else {
/* 其他字符长度为1 */
valueLength += 1;
}
if(length<valueLength){
break;
}else{
sb.append(temp);
}
}
return sb.toString();
}