如果一篇文章比较长,我们在一页面显示出来太长,不好看,想进行分页面。这在asp.net中如何处理呢。在网上查了一下资料,发现都是要在新闻添加 时加一下标记,但没有具体做法,后来有一个兄弟提出可以根据字数进行分。而且可以根据<P>这个标记来分。我就根据这个想法。写了下面的程 序,如果你有更好的方法,可以告诉我。给我留言。
因为一般情况下我们在发布新闻的时候,都是采用在线编辑器来处理,在线编辑器里断行都是大写的<P>下面是我的代码,没有美化。
因为一般情况下我们在发布新闻的时候,都是采用在线编辑器来处理,在线编辑器里断行都是大写的<P>下面是我的代码,没有美化。
private
void
Page_Load(
object
sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
if(!Page.IsPostBack)
{
int page = Convert.ToInt32(Request.QueryString["page"].ToString());
string strsql = "select top 1 * from pageContent where title='chen1'";
string[] strContent = null;
SqlDataReader dr = cdb.mydr(strsql);
if(dr.Read())
{
strContent = filesplit(dr["contents"].ToString());
}
dr.Close();
if(strContent[page-1]!=null)
{
Response.Write(strContent[page-1]);
}
else
{
Response.Write("为什么是空呢");
}
for(int i=0;i<strContent.Length;i++)
{
if(strContent[i]!=null)
{
int npage = i+1;
Response.Write("<a href=addView.aspx?page=" + npage + ">" + npage + "</a>");
}
}
}
}
public string [] filesplit( string contents)
{
int fileindex = 0;
string[] splitfile = new string[10];
while(contents.Length>10 && fileindex<9)
{
if(contents.IndexOf("<P>",10)<0) break;
splitfile[fileindex] = contents.Substring(0,contents.IndexOf("<P>",10));//这里注意这里的10是字数,我是为了测试而采用10,你可以根据你的新闻页面再设置,我想最少也得200字吧。呵呵。。。。。。
contents = contents.Remove(0,splitfile[fileindex].Length);
fileindex++;
}
splitfile[fileindex] = contents;
return splitfile;
}
Web 窗体设计器生成的代码
}
{
// 在此处放置用户代码以初始化页面
if(!Page.IsPostBack)
{
int page = Convert.ToInt32(Request.QueryString["page"].ToString());
string strsql = "select top 1 * from pageContent where title='chen1'";
string[] strContent = null;
SqlDataReader dr = cdb.mydr(strsql);
if(dr.Read())
{
strContent = filesplit(dr["contents"].ToString());
}
dr.Close();
if(strContent[page-1]!=null)
{
Response.Write(strContent[page-1]);
}
else
{
Response.Write("为什么是空呢");
}
for(int i=0;i<strContent.Length;i++)
{
if(strContent[i]!=null)
{
int npage = i+1;
Response.Write("<a href=addView.aspx?page=" + npage + ">" + npage + "</a>");
}
}
}
}
public string [] filesplit( string contents)
{
int fileindex = 0;
string[] splitfile = new string[10];
while(contents.Length>10 && fileindex<9)
{
if(contents.IndexOf("<P>",10)<0) break;
splitfile[fileindex] = contents.Substring(0,contents.IndexOf("<P>",10));//这里注意这里的10是字数,我是为了测试而采用10,你可以根据你的新闻页面再设置,我想最少也得200字吧。呵呵。。。。。。
contents = contents.Remove(0,splitfile[fileindex].Length);
fileindex++;
}
splitfile[fileindex] = contents;
return splitfile;
}
Web 窗体设计器生成的代码
}