String s="…………";
s=s.replace("\r\n","<br>");

解决方案 »

  1.   

    beyond_xiruo(苏鸿):我试过了,不行么。
    情况什这样的,我们用微软的sharepoint portal server作二次开发,发现他主要用utf-8进行编码,无法实现回车换行,您有什么办法吗?
      

  2.   

    我自己写的和使用的函数,可以使用的。
      public static final String escapeHTMLTags(String in)
      {
        if (in == null)
        {
          return null;
        }
        char ch;
        int i = 0;
        int last = 0;
        char[] input = in.toCharArray();
        int len = input.length;
        StringBuffer out = new StringBuffer();
        while (i < len)
        {
          ch = input[i];
          if (ch == '<')
          {
            if (i > last)
            {
              out.append(input, last, i - last);
            }
            last = i + 1;
            out.append("&lt;");
            i++;
            continue;
          }
          else if (ch == '>')
          {
            if (i > last)
            {
              out.append(input, last, i - last);
            }
            last = i + 1;
            out.append("&gt;");
            i++;
            continue;
          }
          else if (ch == '\r')
          {
            char chNext = input[i+1];
            if ((byte) chNext == '\n')
            {
              if (i > last)
              {
                out.append(input, last, i - last);
              }
              last = i + 1 + 1;
              out.append("<BR>");
              i +=2;
              continue;
            }
          }
          else if (ch == '\n')
          {
            if (i > last)
            {
              out.append(input, last, i- last);
            }
            last = i + 1;
            out.append("<BR>");
            i++;
            continue;
          }
          else if (ch == ' ')
          {
            if (i > last)
            {
              out.append(input, last, i- last);
            }
            last = i + 1;
            out.append("&nbsp;");
            i++;
            continue;
          }
          else
          {
            i++;
          }
        }
        if (last == 0)
        {
          return in;
        }
        if (i > last)
        {
          out.append(input, last, i - last);
        }
        return out.toString();
      }
      

  3.   

    可能是编码的问题吧?可以试试用编码 replace("\u000D\u000A", "<br>")
      

  4.   

    我上面程序中的这一段就是用来转换空格的. &nbsp;
          else if (ch == ' ')
          {
            if (i > last)
            {
              out.append(input, last, i- last);
            }
            last = i + 1;
            out.append("&nbsp;");
            i++;
            continue;
          }