ASP新闻分页,将一篇过长的文章分页,生成静态页面

来源:asp之家 时间:2011-04-10 11:14:00 

上次还是CSDN里的朋友回答的,我复制了下来。原文如下
===========================
利用统计文章字数,然后达到一定字数就截断输出,但是分页的内容就会在莫名其妙的地方截断,不是很友好。
  很简单,在要截断的地方附近找下面的符号:
;'”?。!;'".!
  如果后面存在<p>或<br>就分页。主要是要研究文章的格式。

<% 
if Request.ServerVariables("Content_Length") > 0 then 
content = Request.Form("textarea1")PageLength = 1000 '每页字数 
CLength = Len(content) 
PageCount = Int(Clength/PageLength) + 1 '计算页数dim PageArray 
redim PageArray(PageCount)Seperator = Array(chr(13),chr(10),"。","!","?",";",",","”","'") '分隔符PageArray(0) = 0 
Pos = 0 
for j=0 to ubound(Seperator) 
Pos = instr(PageArray(i)+900,content,Seperator(j)) 'PageArray(i)+900 附近位置是100字,1-999可调 
while Pos > 0 and Pos < (i+1)*PageLength and Pos > i*PageLength 
PageArray(i) = Pos 
Pos = instr(Pos+PageLength,content,Seperator(j)) 
wendif PageArray(i) > 0 then 
Response.Write "0:i&brvbar; "&PageArray(i)&"<br>"&j&":j"&Seperator(j)&"<br>" 
j = j + ubound(Seperator) + 1 
end if 
nextfor i=1 to PageCount-1 
PageArray(i) = 0 
Pos = 0 
for j=0 to ubound(Seperator) 
Pos = instr(PageArray(i-1)+950,content,Seperator(j)) 
while Pos > 0 and Pos < (i+1)*PageLength and Pos > i*PageLength 
PageArray(i) = Pos 
Pos = instr(Pos+PageLength,content,Seperator(j)) 
wend 
if PageArray(i) > 0 then 
Response.Write i&":i&brvbar; "&PageArray(i)&"<br>"&j&":j"&Seperator(j)&"<br>" 
j = j + ubound(Seperator) + 1 
end if 
next 
nextoutput = mid(content,1,PageArray(0)) 
output = replace(output,chr(13),"<br>") 
Response.Write "<br><br>第1段<br>" 
Response.Write outputfor i=1 to PageCount-2 
output = mid(content,PageArray(i-1)+1,PageArray(i)-PageArray(i-1)) 
output = replace(output,chr(13),"<br>") 
Response.Write "<br><br>第"&i+1&"段<br>" 
Response.Write output 
next'最后一段的输出就没写了else 
%> 
<FORM action="" method=POST id=form1 name=form1> 
<TEXTAREA rows=70 cols=120 id=textarea1 name=textarea1> 
</TEXTAREA> 
<INPUT type="submit" value="Submit" id=submit1 name=submit1> 
</FORM> 
<%end if%> 

---------------------------------------------------------------

定义有 每页面长度 MaxLength
文本总长度 TotalLength
扫描文章中每一个段尾处的硬回车
并计算该处长度
一旦超过 MaxLength 则分成第一页
删除此硬回车前的部分 重复上述操作。

标签:ASP,新闻分页,文章分页,生成静态
0
投稿

猜你喜欢

  • vue3中cookie的详细使用过程

    2024-04-30 08:45:05
  • Python 程序报错崩溃后如何倒回到崩溃的位置(推荐)

    2021-01-08 16:14:34
  • 精美漂亮的php分页类代码

    2023-11-22 08:28:09
  • Python 拷贝对象(深拷贝deepcopy与浅拷贝copy)

    2022-04-07 09:50:44
  • Python 实现过滤掉列表中唯一值

    2021-09-26 23:13:55
  • mysql 无限级分类实现思路

    2024-01-19 09:18:35
  • Django实现文章详情页面跳转代码实例

    2023-08-29 05:41:47
  • 使用 XML HTTP Request 对象[翻译]

    2007-11-07 21:11:00
  • 解读MaxPooling1D和GlobalMaxPooling1D的区别

    2023-07-21 10:54:43
  • Keras loss函数剖析

    2021-01-24 05:25:27
  • H2 数据库导入CSV文件实现原理简析

    2024-01-15 12:06:27
  • python3实现TCP协议的简单服务器和客户端案例(分享)

    2023-01-11 13:11:21
  • 基于logstash实现日志文件同步elasticsearch

    2023-09-01 14:45:57
  • python数据结构之面向对象

    2021-04-09 08:02:06
  • Python import与from import使用及区别介绍

    2022-05-17 12:09:19
  • Python图像处理之几何变换

    2021-05-05 12:46:39
  • 自己搭建resnet18网络并加载torchvision自带权重的操作

    2021-11-28 12:24:33
  • 浅析Golang中字符串拼接问题

    2024-04-28 09:17:07
  • Python ORM编程基础示例

    2021-12-06 14:22:17
  • Python的装饰器用法学习笔记

    2021-05-06 03:03:36
  • asp之家 网络编程 m.aspxhome.com