StringUtil.java
/**
* 去掉换行符、空格、制表符、回车
*
* @param str 原字符串
* @return 转换后的字符串
*/
public static String trim(String str) {
if (str == null) {
return null;
}
if (str.length() == 0) {
return str;
}
return StringUtil.customTrim(str, Arrays.asList('\n', ' ', '\t', '\r'));
}
/**
* 裁剪首尾的字符
*
* @param str
* @param trimChars
* @return
*/
public static String customTrim(String str, Collection<Character> trimChars) {
char[] val = str.toCharArray();
int len = val.length;
int st = 0;
while ((st < len) && (trimChars.contains(val[st]))) {
st++;
}
while ((st < len) && (trimChars.contains(val[len - 1]))) {
len--;
}
return (st > 0) || (len < val.length) ? str.substring(st, len) : str;
}
/**
* 裁剪首尾的字符
*
* @param str
* @param trimChars 字符串也行
* @return
*/
public static String customTrim(String str, String trimChars) {
char[] val = str.toCharArray();
int len = val.length;
int st = 0;
while ((st < len) && (trimChars.indexOf(val[st]) != -1)) {
st++;
}
while ((st < len) && (trimChars.indexOf(val[len - 1]) != -1)) {
len--;
}
return (st > 0) || (len < val.length) ? str.substring(st, len) : str;
}