没有合适的资源?快使用搜索试试~ 我知道了~
net中文章按内容长度分页
1星 需积分: 9 4 下载量 4 浏览量
2010-09-09
10:58:40
上传
评论
收藏 6KB TXT 举报
温馨提示
试读
6页
net中文章按内容长度分页,自动识别段落不会影响原来文章排版。
资源推荐
资源详情
资源评论
1、新建分页类
#region
/// <summary>
/// 分页类******李川成******
/// </summary>
public class Page
{
/// 长内容分页 哈希表需要引用命名空间System.Collections
/// </summary>
/// <param name="n_content">新闻内容</param>
/// <param name="page">是新闻当前页数</param>
/// <param name="size">每页显示字符长度</param>
/// <param name="linkurl">页码链接地址</param>
/// <returns></returns>
public System.Collections.Hashtable SeparatePages(string n_content, string page, int size, string linkurl)
{
//在此处放置初始化页的用户代码
System.Collections.Hashtable returnHash = new System.Collections.Hashtable();
int start, stops, t, stat, pp, pagecount, pagesize;
string pa, articletxt, articletext, html;
int pig = 0;
//变量初始值
stat = 0;
start = 0; //开始查询的字符串位置,初始为0
stops = 0;
pagesize = size;//定义每页至少显示字符串数
pagecount = 0;
html = "";
#region
/// <summary>
/// 分页类******李川成******
/// </summary>
public class Page
{
/// 长内容分页 哈希表需要引用命名空间System.Collections
/// </summary>
/// <param name="n_content">新闻内容</param>
/// <param name="page">是新闻当前页数</param>
/// <param name="size">每页显示字符长度</param>
/// <param name="linkurl">页码链接地址</param>
/// <returns></returns>
public System.Collections.Hashtable SeparatePages(string n_content, string page, int size, string linkurl)
{
//在此处放置初始化页的用户代码
System.Collections.Hashtable returnHash = new System.Collections.Hashtable();
int start, stops, t, stat, pp, pagecount, pagesize;
string pa, articletxt, articletext, html;
int pig = 0;
//变量初始值
stat = 0;
start = 0; //开始查询的字符串位置,初始为0
stops = 0;
pagesize = size;//定义每页至少显示字符串数
pagecount = 0;
html = "";
//获得当前的页数
pa = page;
if (pa == "" || pa == null)
{
pa = "1";
}
pp = Convert.ToInt32(pa);
//获得内容
articletxt = n_content;
//判断页面的内容长度是否大于定义的每页至少显示字符串数
if (articletxt.Length >= pagesize) // 如果大于字符串数,则我们可以分页显示
{
t = articletxt.Length / pagesize; //获得大致的总页数
for (int j = 0; j <= t; j++)
{ //如果查询开始位置到查询的范围超出整个内容的长度,那么就不用寻找断点(分页点);反之,查找
if (start + pagesize < articletxt.Length)
{
stat = articletxt.ToLower().IndexOf("</p>", start + pagesize); //查找</P>分页点的位置
if (stat == -1)
stat = articletxt.ToLower().IndexOf("<br>", start + pagesize); //查找</P>分页点的位置
if (stat == -1)
stat = articletxt.ToLower().IndexOf("
", start + pagesize); //查找</P>分页点的位置
}
if (stat <= 0)//如果找不到
{
}
else
{
stops = stat; //分页点的位置也就作为这一页的终点位置
if (start < articletxt.Length)
pa = page;
if (pa == "" || pa == null)
{
pa = "1";
}
pp = Convert.ToInt32(pa);
//获得内容
articletxt = n_content;
//判断页面的内容长度是否大于定义的每页至少显示字符串数
if (articletxt.Length >= pagesize) // 如果大于字符串数,则我们可以分页显示
{
t = articletxt.Length / pagesize; //获得大致的总页数
for (int j = 0; j <= t; j++)
{ //如果查询开始位置到查询的范围超出整个内容的长度,那么就不用寻找断点(分页点);反之,查找
if (start + pagesize < articletxt.Length)
{
stat = articletxt.ToLower().IndexOf("</p>", start + pagesize); //查找</P>分页点的位置
if (stat == -1)
stat = articletxt.ToLower().IndexOf("<br>", start + pagesize); //查找</P>分页点的位置
if (stat == -1)
stat = articletxt.ToLower().IndexOf("
", start + pagesize); //查找</P>分页点的位置
}
if (stat <= 0)//如果找不到
{
}
else
{
stops = stat; //分页点的位置也就作为这一页的终点位置
if (start < articletxt.Length)
剩余5页未读,继续阅读
资源评论
- wtoeb2012-04-03这个分页有问题,一是效率低,二是分页会出现一个段落被分为两段。
LiCHuanCHeng
- 粉丝: 2
- 资源: 31
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功