日期:2014-05-18  浏览次数:20669 次

关于页面过滤的问题
我的问题是这样的:
我现在有一个添加新闻的页面add_news.jsp,找个页面中有一个文本域的name="content",现在我要添加新闻,在文本域中输入了一堆有格式换行的文字,写到了mysql数据库中,但是在另外一个页面all_news.jsp中取出新闻内容数据的时候就没有格式了,我要用过滤器怎么去实现?在线等...
希望有详细的实现。

------解决方案--------------------
我这里有个代码,你可以试试。。把这个代码,放在你要显示文本的JSP文件中。
Java code

<%!

class WebUtil{

       public WebUtil(){
       }

       public  String handleContent(String content){
         String newContent=null;


         if(content!=null){


            java.util.StringTokenizer  stk=new java.util.StringTokenizer(content,"\r\n <>",true);
            StringBuffer sbf=new StringBuffer();
            int rNum=0;
            while(stk.hasMoreTokens()){
                String t=stk.nextToken();
                if(t.equals(" ")){
                    for(int in=0;in<rNum;in++){
                        sbf.append("<br>");
                    }
                    sbf.append("&nbsp;");
                    rNum=0;
                }else if(t.equals("<")){
                    for(int in=0;in<rNum;in++){
                        sbf.append("<br>");
                    }
                    sbf.append("&lt;");
                    rNum=0;
                }else if(t.equals(">")){
                    for(int in=0;in<rNum;in++){
                        sbf.append("<br>");
                    }
                    sbf.append("&gt;");
                    rNum=0;
                }else if(t.equals("\n")){
                    for(int in=0;in<rNum-1;in++){
                        sbf.append("<br>");
                    }
                    sbf.append("<br>");
                    rNum=0;
                }else if(t.equals("\r")){
                    rNum++;
                    
                }else{
                    for(int in=0;in<rNum;in++){
                        sbf.append("<br>");
                    }
                    sbf.append(t);
                    rNum=0;
                }
                
            }
            for(int in=0;in<rNum;in++){
                sbf.append("<br>");
            }
            newContent=sbf.toString();
            

         }


         return newContent;
       }
}


WebUtil util=new WebUtil();

%>