在JSP中,不象PHP那样有许多的现成的字符串处理函数,在jsp中你需要自己编写,下面是几个常用的函数,非常有用!
------------------------------- 中文处理函数:getStr public String getStr(String string){ try{ String temp_p=string; byte[] temp_t=temp_p.getBytes("ISO8859-1"); String temp=new String(temp_t); return temp; }catch(Exception e){} return "null"; }
------------------------------------ 字符串替代函数:在line中,用newString 替代 oldString public String replace( String line, String oldString, String newString ) { int i=0; if ( ( i=line.indexOf( oldString, i ) ) >= 0 ) { char [] line2 = line.toCharArray(); char [] newString2 = newString.toCharArray(); int oLength = oldString.length(); StringBuffer buf = new StringBuffer(line2.length); buf.append(line2, 0, i).append(newString2); i += oLength; int j = i; while( ( i=line.indexOf( oldString, i ) ) > 0 ) { buf.append(line2, j, i-j).append(newString2); i += oLength; j = i; } buf.append(line2, j, line2.length - j); return buf.toString(); } return line; } 一个实际的运用是用将"\r\n"等回车符替代成" "
------------------------------------------- 下面的函数可以将´<´替换成´<´,可以用来发表HTML源代码 public String escapeHTML(String input){ if(input==null||input.length()==0) return input; StringBuffer buf=new StringBuffer(input.length()+6); char ch=´a´; for(int i=0;ich=input.charAt(i); if(ch==´<´){ buf.append("<"); } else if(ch==´>´){ buf.append(">"); } else{ buf.append(ch); } } return buf.toString(); } |