比如我在<textarea>中输入"      你好    ",用 request.getParameter("myparam")取值就变成了 "你好"。我若想取得"       你好    ",该如何取?

解决方案 »

  1.   

    不会吧?除非你用了String.trim(),顺便说下,在HTML如果你没有特别处理,前后只会显示一个空格。
      

  2.   

    to:lingbo(凌波)
    比如我在<textarea>中输入"      你好    ",用 request.getParameter("myparam")取值就变成了 "你好"。我若想取得"       你好    ",该如何取?
    ============================================你这个结果是怎么得到的??是直接将request.getParameter("myparam")输出得到的还是,将request.getParameter("myparam")存入数据库以后得到的?
      

  3.   

    要经过特别处理把空格变为&nbsp;
      

  4.   

    你该不是使用
      out.println(request.getParameter("myparam"))

      <%=request.getParameter("myparam")%>
    输出到网页吧?System.out.println("["+request.getParameter("myparam")+"]");
    这样你在控制台看一下是"[      你好    ]" 还是"[你好]"
      

  5.   

    谢谢楼上各位!
    我试过:System.out.println("["+request.getParameter("myparam")+"]");
    在控制台显示的是"[      你好    ]";若是out.println(request.getParameter("myparam")),得到的就是[ 你好 ]。如果我要把<textarea>中内容存入数据库,然后再取出来,还想让它显示成在textarea中编辑的格式,是不是需要对空格进行处理?
    如何处理?请多参与,解决后我会在这里把答案显示出来供大家参考,然后散分。
      

  6.   

    晕倒,我在jsp和Servlet中都测试了,结果相同,它会自己将前面的空格去掉。郁闷。
      

  7.   

    给你个例子,自己看看吧。public class EncodeHtml
    {
      public static String getHTML(String str)
      {
        StringBuffer strb = new StringBuffer();
        for(int i=0;i<str.length();i++)
        {
          if(str.charAt(i)=='\n')
          {
            strb.append("<br>");
          }
          else if (str.charAt(i)=='<')
          {
            strb.append("&lt;");
          }
          else if (str.charAt(i)=='>')
          {
            strb.append("&gt;");
          }
          else if (str.charAt(i)==' ')
          {
            strb.append("&nbsp;");
          }
          else strb.append(str.charAt(i));
        }
        return strb.toString();
      }
    }
      

  8.   

    用javascript会快一点-----------------------------------------------------------------
    test.jsp源程序:
    ---------------------------------------------------<%@ page contentType="text/html;charset=gb2312"%><script>
        function transfer(){
            var contents = document.mainform.contents.value;
            var index = contents.indexOf(" ");
            while (index != -1) {
                contents = contents.substring(0,index) + "&nbsp;" + contents.substring(index+1, contents.length);
                index = contents.indexOf(" ");
            }
        }
    </script><form name="mainform" action="test.jsp" method="post" onsubmit="transfer()">
    <textarea name="contents" cols="40" rows="10"></textarea><br>
    <input type="submit" name="submit" value="submit">
    </form><%    
        String contents = request.getParameter("contents");
        if (contents!=null){
            out.println(contents);
            System.out.println(contents);
        }
    %>