将字符串截取为指定长度的几段的做法

今天做一个翻书的效果,从数据库中读取用户写的文章,然后分页显示,实现翻书效果。一篇文章太长,需要按指定长度截取成几段,写一个方法:

 private ArrayList GetSeparateSubString(string txtString, int charNumber) //charNumber为要截取的每段的长度
   {  
    ArrayList arrlist = new ArrayList();
    string tempStr = txtString;
    for (int i = 0; i < tempStr.Length; i += charNumber)//首先判断字符串的长度,循环截取,进去循环后首先判断字符串是否大于每段的长度
    {                    
        if ((tempStr.Length - i) > charNumber)//如果是,就截取
        {
            arrlist.Add(tempStr.Substring(i, charNumber));
        }
        else
        {
            arrlist.Add(tempStr.Substring(i));//如果不是,就截取最后剩下的那部分
        }
    }
    return arrlist;
    }

然后调用这个方法就行了 例如

string txtString="abcdefghijklmnopqr";

 ArrayList array = GetSubString(txtString, 4);

foreach(string arr in array)

{

  Response.Write(arr+"</br>");

}

输出:

abcd
      efgh
  ijkl
  mnop
  qr

这个做法还不完美 有待优化中

posted @ 2012-09-13 17:57  少雨愁  阅读(2255)  评论(0编辑  收藏  举报