将字符串截取为指定长度的几段的做法
今天做一个翻书的效果,从数据库中读取用户写的文章,然后分页显示,实现翻书效果。一篇文章太长,需要按指定长度截取成几段,写一个方法:
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
这个做法还不完美 有待优化中