protected string PageSplit(string content,int page,int pageSize) //content为要分页的内容,PAGE为当前页
{ string PageTag = @"<div style=""page-break-after: always""><span style=""display: none"">[page]</span></div>"; //分页特证码或标记 //int pageSize = 5; //每页显示多少分页
if (content.IndexOf(PageTag) <= 0) //如果没有分页 { return content; } else //如果有分页 { string[] ContentArry = Regex.Split(content, @"<div style=""page-break-after: always""><span style=""display: none"">\[page\]", RegexOptions.IgnoreCase); //要是页数超过pagesize页,代表分组翻页,比如pagesize=10,而分页数有31,也就是一篇文章分31页显示,那就是分四组翻页,[1-10 下一页] [上一页 11-20 下一页] [同 21-30 同] [上一页 31-31] 四组显示
int PageArryCount; //总的分页组数 if (ContentArry.Length % pageSize == 0) { PageArryCount = ContentArry.Length / pageSize; } else { PageArryCount=((ContentArry.Length/pageSize)+1); }
//==============判断当前页是哪个分页组的 int CurrentArry; if (page % pageSize == 0) { CurrentArry = page / pageSize; } else { CurrentArry=((page/pageSize)+1); }
string url = Request["id"]; string PageExt = ".html"; string Shangyiye = ""; string Xiayiye = ""; string ListStr = "";
for (int i = (CurrentArry-1) * pageSize; i < ((CurrentArry-1) * pageSize) + pageSize;i++ ) { if (i == 0) //如果是第一页将第1页的“-1.html”省略“-1” { if (page - 1 == i) //再判断当前页是不是第一页,是的话设置为当前页样式为红色 { ListStr += @"<a href=""" + url + PageExt + "\" style='color:red'>[ 第" + (i + 1) + "页 ]</a> "; } else { ListStr += @"<a href=""" + url + PageExt + "\" style='color:black'>[ 第" + (i + 1) + "页 ]</a> "; } } else { if (page - 1 == i) //设置当前页样式为红色 { ListStr += @"<a href=""" + url + "-" + (i + 1) + PageExt + "\" style='color:red'>[ 第" + (i + 1) + "页 ]</a> "; } else { ListStr += @"<a href=""" + url + "-" + (i + 1) + PageExt + "\" style='color:black'>[ 第" + (i + 1) + "页 ]</a> "; } }
if (i >= ContentArry.Length-1) break;
}
if (CurrentArry >= PageArryCount) //如果当前分页组在于或等于总组数 { Xiayiye = ""; } else { Xiayiye = @"<a href=""" + url + "-" + (((CurrentArry) * pageSize) + 1) + PageExt + "\" style='color:red'>[ 下一页 ]</a> "; } if (CurrentArry <= 1) { Shangyiye = ""; } else { if (page - 1 == 1) { Shangyiye = @"<a href=""" + url + PageExt + "\" style='color:red'>[ 上一页 ]</a> "; } else { Shangyiye = @"<a href=""" + url + "-" + ((CurrentArry - 1) * pageSize) + PageExt + "\" style='color:red'>[ 上一页 ]</a> "; } } return ContentArry[page-1]+ Shangyiye + ListStr + Xiayiye; } } |