最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

asp.net 文章內(nèi)容分頁(yè)顯示的代碼

 更新時(shí)間:2009年01月07日 23:18:25   作者:  
有種文章分頁(yè)的思路是用截取文本字符數(shù)的方法來(lái)處理,這個(gè)方法當(dāng)文章內(nèi)容是html代碼的話(huà),分頁(yè)后會(huì)引起排版問(wèn)題。
aspx:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="ArticlePage.aspx.cs" Inherits="ArticlePage" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>文章分頁(yè)</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<table style="text-align: center;" border="0" cellpadding="0" cellspacing="0">
<tr>
<td align="left" style="width: 400px; background-color: #ffff99;">
<table style="width: 100%">
<tr>
<td style="width: 100%; border-top: #ff3300 2px dotted; border-left-width: 2px; border-left-color: #ff3300; border-bottom: #ff3300 2px dotted; border-right-width: 2px; border-right-color: #ff3300; height: 25px; text-align: center;">
<%=ArticleTitle %></td>
</tr>
</table>
</td>
</tr>
<tr>
<td style="width: 400px; height: 100%;" align="left">
<p style="background-color: oldlace">
<%=Article %>
</p>
</td>
</tr>
<tr>
<td style="width: 400px; background-color: #ffff99; height: 48px;">
<table style="width: 100%">
<tr>
<td style="width: 100%; border-top: #ff3300 2px dotted; border-left-width: 2px; border-left-color: #ff3300; border-bottom: #ff3300 2px dotted; border-right-width: 2px; border-right-color: #ff3300;" align="left">
<p>
<asp:HyperLink ID="firstLink" runat="server" Visible="False">首頁(yè)</asp:HyperLink>
<asp:HyperLink ID="preLink" runat="server" Visible="False">上一頁(yè)</asp:HyperLink>
<asp:HyperLink ID="nextLink" runat="server" Visible="False">下一頁(yè)</asp:HyperLink>
<asp:HyperLink ID="lastLink" runat="server" Visible="False">末頁(yè)</asp:HyperLink>
</p>
<p>
<%
if(pageSum>1)
{
for (int i = 1; i <= pageSum; i++)
{
if (pageNo == i)
{
%>
<%=i%>
<%
}
else
{
%>
<a href="?page=<%=i %>"><%=i%></a>
<%
}
}
}
%>
頁(yè)數(shù):<%=pageNo %>/<%=pageSum %>
</p></td>
</tr>
</table>
</td>
</tr>
</table>
<br />
</div>
</form>
</body>
</html>
//==========================
aspx.cs:
(C#)
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
public partial class ArticlePage : System.Web.UI.Page
{
protected string Article = "", ArticleTitle="";
protected int pageNo = 1, pageSum = 1;
protected void Page_Load(object sender, EventArgs e)
{
//實(shí)際應(yīng)用中,此處的數(shù)據(jù)通過(guò)操作數(shù)據(jù)庫(kù)來(lái)獲取
ArticleTitle = "文章標(biāo)題";
string filename = "20091795819.html";
string mPath = Server.MapPath("h3g/");
string filepath = mPath + filename;
ShowArticle(filepath);
}
protected void ShowArticle(string filepath)
{
string page = Request.Params["page"];
int perPageLine = 5;//每頁(yè)行數(shù)
ArrayList al = fileOpr.ReadFileContentToArrayList(filepath);//按行讀取文件內(nèi)空到數(shù)組中
int contentLine = al.Count;
pageSum = (int)System.Math.Ceiling((double)contentLine / perPageLine);//總頁(yè)數(shù),進(jìn)1取整
if (page == null || page == "" || page == "1")
{
pageNo = 1;
if (contentLine <= perPageLine)
{
for (int i = 0; i < contentLine; i++)
{
Article += al[i].ToString();
}
}
else
{
for (int i = 0; i < perPageLine; i++)
{
Article += al[i].ToString();
}
firstLink.Visible = false;
preLink.Visible = false;
nextLink.NavigateUrl = "?page=" + (pageNo + 1);
nextLink.Visible = true;
lastLink.NavigateUrl = "?page=" + pageSum;
lastLink.Visible = true;
}
}
else
{
pageNo = int.Parse(page);
if (pageNo < pageSum)
{
for (int i = perPageLine * (pageNo - 1); i < perPageLine * pageNo; i++)
{
Article += al[i].ToString();
}
firstLink.NavigateUrl = "?page=1";
firstLink.Visible = true;
preLink.NavigateUrl = "?page=" + (pageNo - 1);
preLink.Visible = true;
nextLink.NavigateUrl = "?page=" + (pageNo + 1);
nextLink.Visible = true;
lastLink.NavigateUrl = "?page=" + pageSum;
lastLink.Visible = true;
}
else
{
for (int i = contentLine - perPageLine * (pageSum - 1); i < contentLine; i++)
{
Article += al[i].ToString();
}
firstLink.NavigateUrl = "?page=1";
firstLink.Visible = true;
preLink.NavigateUrl = "?page=" + (pageNo - 1);
preLink.Visible = true;
nextLink.Visible = false;
lastLink.Visible = false;
}
}
}
}
重用類(lèi)fileOpr.cs:
fileOpr.ReadFileContentToArrayList(filepath);中的方法:
public static ArrayList ReadFileContentToArrayList(string filepath)
{
ArrayList al = new ArrayList();
FileStream fs = new FileStream(filepath, FileMode.Open, FileAccess.Read);
StreamReader srd = new StreamReader(fs, Encoding.Default);
//使用StreamReader類(lèi)來(lái)讀取文件
srd.BaseStream.Seek(0, SeekOrigin.Begin);
string strLine = srd.ReadLine();
while (strLine != null)
{
strLine = srd.ReadLine();
al.Add(strLine + "\n");
}
//關(guān)閉此StreamReader對(duì)象
srd.Close();
fs.Dispose();
fs.Close();
return al;
}
注:有種文章分頁(yè)的思路是用截取文本字符數(shù)的方法來(lái)處理,這個(gè)方法當(dāng)文章內(nèi)容是html代碼的話(huà),分頁(yè)后會(huì)引起排版問(wèn)題。
上面代碼的方法思路是按行數(shù)來(lái)處理,這個(gè)方法個(gè)人認(rèn)為相對(duì)更好些。在后臺(tái)管理文章內(nèi)容文件時(shí),保證html代碼的良好排版換行即可。

相關(guān)文章

最新評(píng)論

镇原县| 柳林县| 江孜县| 旬邑县| 阿拉善右旗| 灌南县| 额敏县| 思茅市| 新民市| 广州市| 平昌县| 涞源县| 栾城县| 柘荣县| 韶山市| 慈利县| 皮山县| 响水县| 康平县| 凤山市| 若羌县| 农安县| 治多县| 隆化县| 噶尔县| 丹棱县| 吴川市| 江永县| 绥中县| 贡嘎县| 饶平县| 明溪县| 浦东新区| 樟树市| 保定市| 元谋县| 昌都县| 固始县| 常山县| 习水县| 陵水|