1. 将泛型为String类型的集合转化为逗号间隔字符串形式
public static String stringListToString(List<String> stringList){
if (stringList == null || stringList.size() <= 0) {
return null;
}
return stringList.toString().replaceAll("^\\[| |\\]$", "");
}
2.将字符串数组转成逗号分隔的字符串返回(一般在SQL语句中使用较多)
/**
* 将字符串数组转化成以逗号分隔的字符串返回
* @param strArray
* @return 形如 ('1','2','3')
*/
public static String getStrByArr(String[] strArray) {
StringBuffer sb = new StringBuffer("(");
for(String s : strArray) {
sb.append("'").append(s).append("'").append(",");
}
return sb.deleteCharAt(sb.length()-1).append(")").toString();
}
3.获得项目的真实地址
System.getProperty("user.dir");//F:\workspace2\exam6.2.1\examaffairnew
4. 对传到前台的特殊字符进行转义
/**
* 对一些特殊字符进行转义
* @param input
* @return
*/
public static String htmlEscape(String input) {
if (input != null) {
input = input.replaceAll("&", "&");
input = input.replaceAll("<", "<");
input = input.replaceAll(">", ">");
input = input.replaceAll(" ", " ");
input = input.replaceAll("'", "'"); //IE暂不支持单引号的实体名称,而支持单引号的实体编号,故单引号转义成实体编号,其它字符转义成实体名称
input = input.replaceAll("\"", """); //双引号也需要转义,所以加一个斜线对其进行转义
input = input.replaceAll("\n", "<br/>"); //不能把\n的过滤放在前面,因为还要对<和>过滤,这样就会导致<br/>失效了
input = input.replaceAll("\\\\", "\\\\\\\\");
}
return input;
}
注意: replaceAll ( String regex, String replacement)和 replace ( CharSequence target, CharSequence replacement) 不同,前者针对正则表达式匹配替换,
后者针对charSequence替换,切不可混淆!
5.日期处理
(1).按日增加日期
/**
* 日期增加-按日增加
*
* @param date
* @param days
* @return java.util.Date
*/
public static Date dateIncreaseByDay(Date date, int days) {
Calendar cal = GregorianCalendar.getInstance(TimeZone.getTimeZone("GMT"));
cal.setTime(date);
cal.add(Calendar.DATE, days);
return cal.getTime();
}
(2).按分增加日期
/**
* 日期增加-按分增加
*
* @param date
* @param days
* @return java.util.Date
*/
public static Date dateIncreaseByMinute(Date date, int minutes) {
Calendar cal = GregorianCalendar.getInstance(TimeZone.getTimeZone("GMT"));
cal.setTime(date);
cal.add(Calendar.MINUTE, minutes);
return cal.getTime();
}
(3).