zoukankan      html  css  js  c++  java
  • 对一篇很长的文章做到完美的分页输出

    利用统计文章字数,然后达到一定字数就截断输出,但是分页的内容就会在莫名其妙的地方截断,不是很友好。
    很简单,在要截断的地方附近找下面的符号:
    ;’”?。!;'".!
    如果后面存在<p>或<br>就分页。主要是要研究文章的格式。
    <%
    if Request.ServerVariables("Content_Length") > 0 then
    content = Request.Form("textarea1")
    <P>PageLength = 1000 '每页字数
    CLength = Len(content)
    PageCount = Int(Clength/PageLength) + 1 '计算页数</P> <P>dim PageArray
    redim PageArray(PageCount)</P> <P>Seperator = Array(chr(13),chr(10),"。","!","?",";",",","”","’") '分隔符</P> <P>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))
    wend</P> <P>if PageArray(i) > 0 then
    Response.Write "0:i| "&PageArray(i)&"<br>"&j&":j"&Seperator(j)&"<br>"
    j = j + ubound(Seperator) + 1
    end if
    next</P> <P>for 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</P> <P>if PageArray(i) > 0 then
    Response.Write i&":i| "&PageArray(i)&"<br>"&j&":j"&Seperator(j)&"<br>"
    j = j + ubound(Seperator) + 1
    end if
    next
    next</P> <P>output = mid(content,1,PageArray(0))
    output = replace(output,chr(13),"<br>")
    Response.Write "<br><br>第1段<br>"
    Response.Write output</P> <P>for 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</P> <P>'最后一段的输出就没写了</P> <P>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%></P>
  • 相关阅读:
    简单SSM配置详解
    Nginx 简介
    序列化与反序列化
    用HttpSessionListener与HttpSessionBindingListener实现在线人数统计
    Linux
    jsp标签精华(持续更新中)
    ZooKeeper 编程(一)
    maven环境快速搭建
    Web项目--------原Oracle数据库的项目同时兼容MySql
    JavaMail实现邮箱之间发送邮件功能
  • 原文地址:https://www.cnblogs.com/MaxIE/p/350169.html
Copyright © 2011-2022 走看看