最近做論壇遇到一個小問題,發表新的帖子的時候,明明打了回車,插入數據庫裡再取出來,全都是一行,回車根本就沒起作用,令人郁悶。
為什麼會這樣呢?
因為輸入文本的時候,換行是用/n,而網頁裡換行是用br,所以把數據庫裡存的/n寫到網頁上就不起作用了。
那麼我門可以通過一個函數,將/n轉換成br。
首先,函數如下,寫在聲明部分
<%! public String turn(String str){ while(str.indexOf("n")!=-1){ str = str.substring(0,str.indexOf("n"))+"<br>"+str.substring(str.indexOf("n")+1); } while(str.indexOf(" ")!=-1){ str = str.substring(0,str.indexOf(" "))+" "+str.substring(str.indexOf(" ")+1); } return str; } %>
在需要查詢數據庫的時候,返回一個結果集rs,用turn函數轉一下就ok了,比如
<%=turn(rs.getString("text"))%>
挺簡單吧!!
大家看到了,上邊的函數有兩部分,對,也能把空格打出來,功能挺強大吧,呵呵!!