textarea中的回车、空格字符存入数据库,再取出来显示时就没有了?
存入ms sql server的text类型字段,取出来在页面上显示时,回车、空格字符就消失了,本来的多行变成了一行。请问这是怎么回事?是不是存入或取出数据库时没有采用相应的编码,假如是编码问题,该如何进行编码呢? 问题点数:50、回复次数:7Top
1 楼chaucer518(我爱我家的思思)回复于 2006-02-09 14:08:39 得分 30
晕了,这个问题都N多人问过了呀:)在存进去前先进行替换处理就行了:)
/*
* 创建日期 2005-8-24
*
* TODO 要更改此生成的文件的模板,请转至
* 窗口 - 首选项 - Java - 代码样式 - 代码模板
*/
package com;
/**
* @author FENGXIAO
*
* TODO 要更改此生成的类型注释的模板,请转至
* 窗口 - 首选项 - Java - 代码样式 - 代码模板
*/
public class Change {
public static String TextToHtml(String sourcestr)
{
int strlen;
String restring="", destr = "";
strlen = sourcestr.length();
for (int i=0; i<strlen; i++)
{
char ch=sourcestr.charAt(i);
switch (ch)
{
case '<':
destr = "<";
break;
case '>':
destr = ">";
break;
case '\"':
destr = """;
break;
case '&':
destr = "&";
break;
case 13:
destr = "<br>";
break;
case 32:
destr = " ";
break;
default :
destr = "" + ch;
break;
}
restring = restring + destr;
}
return "" + restring;
}
}
Top
2 楼supergoalcn(Supergoal)回复于 2006-02-09 14:09:22 得分 5
空格应该不会消息的吧,你试着把\n替换成\n\r试试。Top
3 楼shanmin(shanmin)回复于 2006-02-09 14:13:35 得分 0
输出的时候把空格都替换成 Top
4 楼shanmin(shanmin)回复于 2006-02-09 14:14:15 得分 5
说错了 输出的时候把换行都替换成 <br>Top
5 楼zzlw()回复于 2006-02-09 14:40:57 得分 0
但是我从数据库中取出来时,是赋值给一个变量content的,在jsp页面里是这么显示的:
<%=content%>
那么即使把回车换成<br>,也无济于事,显示出来的是<br>而不是回车字符,
Top
6 楼bionergy(活力四射)回复于 2006-02-09 14:53:04 得分 10
在html里面空格回车都是不显示的,所以楼上的才说要把空格换成 回车换成<br>,这样才会在页面里面能够有空格和回车的效果。
把回车换成<br>在页面的html源代码的确打出来的是<br>,但通过浏览器看页面的时候就是换了新行了,这不正是楼主要的效果吗?Top
7 楼zzlw()回复于 2006-02-09 15:02:32 得分 0
是我搞错了,
刚才只是我的猜想,我试了一下,果真行!
谢谢各位!
结贴了。Top




