可以利用java语言写一个replace函数,
把\r\n 替换成\n/**
     * 此函数的功能是扩展字符串的替换功能
     * @param source
     * @param origin
     * @param dest
     * @return
     */
    public static  String replace(String source, String origin, String dest){
if(origin == null || origin.length()==0){
    return source;
}
String sReturn  = "";
String temp = source;
int nOriginLen = origin.length();
int nPos; while((nPos = temp.indexOf(origin)) != -1) {
    sReturn = sReturn.concat(temp.substring(0,nPos)).concat(dest);
    temp = temp.substring(nPos+nOriginLen);
}
sReturn = sReturn .concat(temp);
return sReturn;
    }

解决方案 »

  1.   

    跟ASP里面是一样的。你也需要有个替换的过程。供你参考。(里面还有些表情的替换,你去掉,基本上可以满足啦)
    import java.io.*;
    import java.util.*; public class  bbcode{
      public String HTMLEncode(String Str){
              Str=YYReplace(Str,">",">");
              Str=YYReplace(Str,"<","&lt;");
              Str=YYReplace(Str,"\n","<BR>");
              return Str;
              }
      public String YYReplace(String Str,String oldStr,String newStr){
           String ReturnStr="";
          int i,j,t,m,n;
          n=0;
          j=oldStr.length();
          if (Str.indexOf(oldStr)>-1)
          {
          while(Str.indexOf(oldStr,n)>-1)
          {
          i=Str.length();
          if (Str.indexOf(oldStr)==0)
             Str=newStr+Str.substring(j,i);
          else
          {
            t=Str.indexOf(oldStr);
            m=(t+j);
            Str=Str.substring(0,t)+newStr+Str.substring(m,i);
            n=t+newStr.length()-j+1;
          }
          }
          }
          ReturnStr=Str;
          return ReturnStr;  }
      public String LCReplace(String Str,String BStr,String EStr,String ReStr){
      String ReturnStr="",Str1="",Str2="";
      int i,j,n;
      n=0;
      if ((Str.indexOf(BStr)>-1)&&((Str.indexOf(EStr)>-1)))
      {
              while(Str.indexOf(BStr,n)>-1)
              {
                      i=Str.indexOf(BStr);
                      j=Str.indexOf(EStr);
                      Str1=Str.substring((i+BStr.length()),j);
                    Str2=YYReplace(ReStr,"$lichao$",Str1);
                    Str1=BStr+Str1+EStr;
                    Str=YYReplace(Str,Str1,Str2);
                          n=i+Str2.length()-Str1.length();
              }
              }
              ReturnStr=Str;
              return ReturnStr;
      }
    public String yyBBCODE(String Str){
    String BStr,EStr,ReStr;
     BStr="";
     EStr="";
     ReStr="<b>$lichao$</b>";
     Str=LCReplace(Str,BStr,EStr,ReStr); BStr="";
     EStr="
    ";
     ReStr="<i>$lichao$</i>";
     Str=LCReplace(Str,BStr,EStr,ReStr); BStr="";
     EStr="
    ";
     ReStr="<u>$lichao$</u>";
     Str=LCReplace(Str,BStr,EStr,ReStr); BStr="[email]";
     EStr="[/email]";
     ReStr="<img align=absmiddle src=IMAGES/EMAIL1.GIF><A HREF='mailto:$lichao$' >$lichao$</A>";
     Str=LCReplace(Str,BStr,EStr,ReStr); BStr="";
     ReStr="<br>引用<hr noshade size=1 color=#C0C0C0>$lichao$<br><hr noshade size=1 color=#C0C0C0><br>";
     Str=LCReplace(Str,BStr,EStr,ReStr); BStr="
     EStr="">";
     EStr="
    ";
     ReStr="<A HREF=http://$lichao$ TARGET=_blank>$lichao$</A>";
     Str=LCReplace(Str,BStr,EStr,ReStr); BStr="";
     ReStr="<a href='$lichao$' target=_blank><IMG SRC=$lichao$ border=0 alt=按此在新窗口浏览图片 onload='javascript:if(this.width>screen.width-333)this.width=screen.width-333'></a>";
     Str=LCReplace(Str,BStr,EStr,ReStr); BStr="[flash]";
     EStr="[/flash]";
     ReStr="<OBJECT codeBase=http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=4,0,2,0 classid=clsid:D27CDB6E-AE6D-11cf-96B8-444553540000 width=400 height=300><PARAM NAME=movie VALUE='$lichao$'><PARAM NAME=quality VALUE=high><embed src='$lichao$' quality=high pluginspage='http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash' type='application/x-shockwave-flash' >$lichao$</embed></OBJECT>";
     Str=LCReplace(Str,BStr,EStr,ReStr); BStr=":)";
     EStr="<img src=IMAGES/SMILE.GIF border=0>";
     Str=YYReplace(Str,BStr,EStr); BStr=":(";
     EStr="<img src=IMAGES/SAD.GIF border=0>";
     Str=YYReplace(Str,BStr,EStr); BStr=":0";
     EStr="<img src=IMAGES/BIGSMILE.GIF border=0>";
     Str=YYReplace(Str,BStr,EStr); BStr=";)";
     EStr="<img src=IMAGES/WINK.GIF border=0>";
     Str=YYReplace(Str,BStr,EStr); BStr=":cool:";
     EStr="<img src=IMAGES/COOL.GIF border=0>";
     Str=YYReplace(Str,BStr,EStr); BStr=":mad:";
     EStr="<img src=IMAGES/MAD.GIF border=0>";
     Str=YYReplace(Str,BStr,EStr); BStr=":o";
     EStr="<img src=IMAGES/SHOCKED.GIF border=0>";
     Str=YYReplace(Str,BStr,EStr); BStr=":P";
     EStr="<img src=IMAGES/TONGUE.GIF border=0>";
     Str=YYReplace(Str,BStr,EStr);
    return Str;
    }
    }
      

  2.   

    上面的也太烦了吧,
    这样看着啊:
    利用这个bean 就可高定package sql;
    public class returnToBr
    {
    public  static  String  returnToBr(String  sStr)
        {
    if  (sStr  ==  null  ||  sStr.equals(""))  
    {
        return  sStr;
    }   String  sTmp  =  new  String();
    int  i  =  0; while  (i  <=  sStr.length()-1)
    {
        if  (sStr.charAt(i)  ==  '\n')
    {
       sTmp  =  sTmp.concat("<br>");
    }

        if  (sStr.charAt(i)  ==  ' ')
    {
       sTmp  =  sTmp.concat("&nbsp;");
    }
    else
    {  
        sTmp  =  sTmp.concat(sStr.substring(i,i+1));
    }     i++;
    }
    return  sTmp;
        } 
    }