package com.sec.util;
/**
* 字符串工具类
* @author Administrator
*
*/
public class StringUtil {
/**
* 过滤<,>,
字符串的方法
* @param input
* @return
*/
public static String filterHTML(String input){
if(input == null || input.length() == 0){
return input;
}
input = input.replaceAll("&", "&")
.replaceAll("<", "lt;")
.replaceAll(">", ">")
.replaceAll(" ", " ")
.replaceAll("", "'")
.replaceAll(""", """)
.replaceAll("
", "<br>");
return input;
}
/**
* 验证字符串是否为空(null或空字符串)
* @param str 要验证的字符串
* @return 验证结果(字符串为空返回true,否则返回false)
*/
public static boolean isNullOrEmpty(String str){
if(str == null || "".equals(str.trim())){
return true;
}
return false;
}
/**
* 按指定长度,省略字符串部分字符
* @param str 字符串
* @param len 保留 字符串的长度
* @return 省略后的字符串
*/
public static String omitString(String str,int len){
StringBuffer sb=new StringBuffer();
if (byteLength(str)>len) {
int count=0;
for (int i = 0; i < str.length(); i++) {
char temp=str.charAt(i);
if (Integer.toHexString(temp).length()==4) {
count+=2;
}else {
count++;
}
if (count<len-3) {
sb.append(temp);
}
if (count==len-3) {
sb.append(temp);
break;
}
if (count>len-3) {
sb.append(" ");
break;
}
}
sb.append("...");
}else {
sb.append(str);
}
return sb.toString();
}
public static int byteLength(String str){
int count=0;
for (int i = 0; i < str.length(); i++) {
if (Integer.toHexString(str.charAt(i)).length()==4) {
count+=2;
}else {
count++;
}
}
return count;
}
}