函数|字符串
在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"等回车符替代成"<br>"
-------------------------------------------
下面的函数可以将'<'替换成'<',可以用来发表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;i<input.length();i++){
ch=input.charAt(i);
if(ch=='<'){
buf.append("<");
}
else if(ch=='>'){
buf.append(">");
}
else{
buf.append(ch);
}
}
return buf.toString();
}