我的问题是这样的:
我现在有一个添加新闻的页面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(" "); rNum=0; }else if(t.equals("<")){ for(int in=0;in<rNum;in++){ sbf.append("<br>"); } sbf.append("<"); rNum=0; }else if(t.equals(">")){ for(int in=0;in<rNum;in++){ sbf.append("<br>"); } sbf.append(">"); 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();%>