用一个页面做录入用,textbox作为输入的控件,然后将一篇文章copy进textbox,然后将其保存到数据库里,
另一个页面用于查看该文章,用得是label来显示
可是我发现label显示出来的文章,完全没有分段,每段都连在一起了.
该如何解决这个问题呢

解决方案 »

  1.   

    给你一个换行函数 /// <summary>
    /// 将无格式的文本处理成有格式的文本
    /// </summary>
    /// <param name="mystr">要处理的文本</param>
    /// <returns>返回带换行等格式的文本</returns>
    public string MyReplace(string mystr)
    {
    if(this.MyisNull(mystr))
    {
    return("&nbsp;");
    }
    else
    {
    mystr = mystr.Replace("\n\r","<br>");
    mystr = mystr.Replace("\r","<br>");
    mystr = mystr.Replace("\t","  ");
    return(mystr);
    }
    }
      

  2.   

    上面有自己的其它函数,再写一个/// <summary>
    /// 将无格式的文本处理成有格式的文本
    /// </summary>
    /// <param name="mystr">要处理的文本</param>
    /// <returns>返回带换行等格式的文本</returns>
    public string MyReplace(string mystr)
    {
    string strTmp = mystr + "a";
    if(strTmp == "a")
    {
    return("&nbsp;");
    }
    else
    {
    mystr = mystr.Replace("\n\r","<br>");
    mystr = mystr.Replace("\r","<br>");
    mystr = mystr.Replace("\t","  ");
    return(mystr);
    }
    }
      

  3.   

    还是不行啊
    我在textbox里copy过去的文章不是从网页上考来的,而是从doc或者txt里考出来的,似乎并不包含
    \n\r \t 之类的换行标签
      

  4.   

    分段就是用\r\n的,如果原来有分段,就会有\r\n的。
      

  5.   

    奇怪了,用textbox来显示,确可以看出分段
      label却不行
      

  6.   

    你是用VB还是C?,用VB的话上面的函数就要改,如果是C的话没有理由不行,我已经用了非常多个项目了,都完全正常.而且也是LABEL显示.
    我怀疑你在显示的时候是不是有做了什么处理或是在保存的时候做了什么处理,你检查一下.最好是打开数据库看看那些内容是不是正常