ASP检索网站指定目录文件的算法与应用方向

 

 

      在我们许多网站中存在这样一个问题,就是链接的维护更新,这是一项工作量很大的工作,若不是的专门工作人员进行维护的大型网站,普通站点的站点更新维护工作基本上都成了一个很令人头疼的问题,特别是在没有很多人手的情况下,要经常维护更新链接更是讨厌,因为这项工作没有多少创意,却很耗时,而JACK显然不是那种喜欢花费大量时间在一件没创意的事情上的那种人,与是,JACK想出了一个ASP的程序原型,让它来完成我们所讨厌的工作吧!
        现在我们假设你有这样一项网站维护任务,就是要把每个月的经济评论分门别类地链接起来供大家查看,这些评论涉及了经济运行的各个方面,可能有国内生产总值的,有物价指数的,有工业发展情况的,并且它们有一个共同的特征,就是他们的文件名就代表了各自评论的内容,例:《XX市1999年国内生产总值完成情况分析》,在这么多合适的假设下(嘻,假设几乎多过了萨缪尔森的经济学了!),我们偷赖的机会来了!我们只要把这些文件拷入评论这个目录相应的子目录,然后写一个ASP页面,它所完成的功能就是检索指定目录下面的文件,并检索结果做成可供点击的链接,那么我们应该怎么写呢?
      很简单,我们只要让ASP给出指定目录下的文件名集合,并遍历这个集合,把集合的每个元素做成相应的链接供大家选择就行啦!另外,若要在全部经济类别内查询所有含有某特征字符串的文件名的文件呢?小CASE啦!你只要把检索文件的函数放入到一个递归的目录检索函数中就行啦!(嘻,不要告诉我你不会递归啊!)
      这样,我们同样可以写出一个点歌系统(嘻,我喜欢听MP3)把歌手做成目录名,把歌曲加上中文名称,一切就OK啦!想听带“爱”的歌?OK!打入爱字!你就能找出所有带爱的歌了!(比如说:爱你爱到骨头里!嘻,排骨乐队!JACK主唱!)
      另外,你加上扩展代码(删除指定文件的代码),若配合UPLOAD的ASP代码,你甚至可以写出一个远程的WEB维护系统呢!当然,这种事情JACK是不做的!ASP不够完美,对二进制的文件读写无能为力!所以只能操作文本文件,嘻嘻,美梦泡汤了?不要紧,用VC啦!写ISAPI能做到呢!

   下面的代码,由于注释很完整(JACK一下午不上网才写出来的呢!嘻,不知又有多少MM在CHAT里等我等得心痛了呢!),我就不多说了,请大家自己分析啦!
<%
'从FORM变量集得到要查询的文件名称所要包含的字符串
data=request.form("search_data")
'调用函数查询目标查询目录下的所有子目录(所有子树)
'函数调用的规则:search_folder(要查询的字符串,查询目标的虚拟绝对路径,查询目标的真实绝对路径)
p=search_folder(data,"http://jack/cgi-bin","c:/webshare/wwwroot/cgi-bin")
%>
<script language="vbscript"  RUNAT=SERVER>
'目录检索函数
function search_folder(search_data,v_path,c_path)
dim file_system,cur_folder,sub_folders,sub_files
'确定查询字符串有效非空
if not isempty(search_data) and len(search_data)>0 then
'建立文件系统对象
set file_system=createobject("scripting.filesystemobject")
'建立建立当前目录对象
set cur_folder=file_system.getfolder(c_path)
'建立当前目录的子目录对象集合
set sub_folders=cur_folder.subfolders
'对子目录集合进行遍历
for each each_sub_folder in sub_folders
'确定子目录的属性为普通子目录
if each_sub_folder.attributes=16 then
'得到当前的子虚拟绝对路径与真实绝对路径
'注:此程序默认子目录与子虚拟目录为同一级别且名称一致.
sub_v_path=v_path&"/"&each_sub_folder.name
sub_c_path=c_path&""&each_sub_folder.name
'调用文件检索函数对当前子目录下的文件进行字符串匹配检索
p=search_file(search_data,sub_v_path,sub_c_path)
'递归检索当前子目录的下一级目录
p=search_folder(search_data,sub_v_path,sub_c_path)
end if
next
'清除所有服务器端对象
set each_sub_folder=nothing
set sub_folders=nothing
set cur_folder=nothing
set file_system=nothing
end if
end function
'********************************
'文件匹配检索函数
function search_file(search_data,v_path,c_path)
dim file_system,sub_files,sub_file_v_path,sub_out_v_path
'确认路径不为空
if not isempty(c_path) then
set file_system=createobject("scripting.filesystemobject")
set cur_folder=file_system.getfolder(c_path)
'建立检索目录下的文件对象集合
set sub_files=cur_folder.files
'遍历文件对象集合
for each each_file in sub_files
'匹配字符串与文件名
if instr(each_file.name,search_data)<>0 then
'建立可用链接,输出匹配文件
sub_file_v_path=v_path&"/"&each_file.name
'替换路径及文件名中可能出现的空格,以便WEB能正常确定路径
sub_out_v_path=Replace(sub_file_v_path," ","%20")
response.write("<p><a href="&sub_out_v_path&">"&sub_file_v_path&"</a>")
end if
next
set sub_out_v_path=nothing
set sub_file_v_path=nothing
set each_file=nothing
set sub_files=nothing
set file_system=nothing
end if
end function
</script>

欢迎大家经常来我的主页看看,大家交流一下编程经验!我的主页主要是一些的源创C++与ASP代码下载(JACK及源创C++与ASP代码)。
主页地址:http://hobson.top263.net

 

  • 0
    点赞
  • 0
    评论
  • 0
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

书名:《ASP.NET开发实战1200例》(清华大学出版社.房大伟.吕双) PDF格式扫描版,全书分为23章,共935页。2011年1月出版。 全书压缩打包成3部分,这是第1部分 内容简介   《ASP.NET开发实战1200例》分为I、II两卷共计1200个例子,包括了开发中各个方面最常用实例,是目前市场上实例最全面开发类图书;书中实例来源于多位工程师多年积累,具有很强实用性。 本书是第I卷,以开发人员在项目开发中经常遇到问题和必须掌握技术为中心,介绍了应用ASP.NET进行程序开发各种知识和技巧。主要包括ASP.NET技术基础、VS 2008环境搭建,还详细讲解了C#语言设计入门,然后从常用Web服务器控件、ASP.NET安全验证控件、数据绑定控件、Web用户控件和ASP.NET导航控件全面介绍了几乎所有ASP.NET控件应用,接着以AJAX无刷新技术及页面模板设计对ASP.NET客户端进行了详细介绍,最后以高效网站开发缓存技术、文件I/O处理和图形图像多媒体方面更高层次地讲解了ASP.NET网站开发技术。本卷共分6篇23章内容,共计600个实例经验技巧。每个实例都是作者精心筛选,具有很强实用性,其中一些是开发人员难于寻觅。 目 录 第1篇 ASP.NET快速入门篇 第1章 搭建ASP.NET开发环境 2 1.1 ASP.NET环境配置 3 实例001 安装和配置Visual Studio 2008开发环境 3 实例002 安装和配置IIS(Web服务器) 7 实例003 安装MSDN帮助编程学习 10 实例004 在VS 2008中设定断点及调试程序 13 1.2 应用Web.Config配置网站 16 实例005 配置Access数据库连接 16 实例006 配置SQL Server数据库连接 18 实例007 配置Session变量生命周期 19 实例008 限制上传文件大小时间 20 实例009 连接默认错误页 21 实例010 配置验证级别 22 第2章 C#语言基础 25 2.1 实用数据类型 26 实例011 仓库盒子学问——数据类型变量 26 实例012 数据类型之值类型使用 27 实例013 数据类型之引用类型使用 30 实例014 数据类型之浅复制:包含引用类型值类型 31 实例015 按值传递引用类型 33 实例016 按引用传递引用类型 35 实例017 程序性能优化——装箱和拆箱 最小化 36 2.2 流程控制和数组应用 38 实例018 岔路口选择——这是去医院还是去学校路 38 实例019 看看你现在是否处于人生黄金阶段 40 实例020 当前所处月份是地球上春夏秋冬哪个季节 41 实例021 巧妇“精打细算”——百钱买百鸡 43 实例022 后台管理登录窗口中用户名及密码重置 45 实例023 制作一个简单循环计数器 47 实例024 媳妇儿喜欢“大乐透”号码 48 实例025 我“双色球”从小到大排序号码 50 实例026 明日科技编程全能词典种类及其价格 51 实例027 浓浓思乡之情——李白《静夜思》 53 实例028 会考考试中汉字拼音简码 54 实例029 经典算法之歌德巴赫猜想算法 55 实例030 经典问题之约瑟夫环问题(使用数组解决) 57 实例031 数组算法之冒泡排序 58 实例032 冒泡排序改进——快速排序算法 60 实例033 较高级数组算法——二分法搜索 61 2.3 运算符应用 63 实例034 加加减减——前缀方式增1和减1运算符 63 实例035 乾坤大挪移——移位运算符简单应用 64 实例036 制作一个简单加法计算器(利用算术运算符) 66 实例037 判断合法用户名称和密码 67 实例038 加密用户密码等重要数据信息 69 2.4 静态字符串String操作 70 实例039 用户注册中“密码”和“确认密码”是否一致 70 实例040 定位字符串和子串 71 实例041 标准图书定价及上市时间 72 实例042 由用户名“MR”和密码“明日科技”组成新密码 73 实例043 分行显示我兴趣爱好 75 实例044 两种比较不错密码修改方案 76 实例045 再谈两种比较不错密码修改方案 77 实例046 智能复制当前输入数据信息 79 实例047 用户密码重置功能 80 2.5 动态字符串StringBuilder操作 81 实例048 动态追加用户密码信息 81 实例049 客户管理系统中动态组成用户新密码 82 实例050 用户密码设置简单化 83 实例051 动态替换用户密码信息 84 2.6 常用日期操作 85 实例052 获得
相关推荐
asp excel农村农家书屋图书在线检索系统是个专为农村农家书屋图书在线检索而设计,信息化时代,简单检索功能可以放你工作效率事半功倍哦。 1. 代码极为简单,你可以稍加改进即可用于适合自己模糊查询系统,功能广泛,建议代码学习者珍藏。 2. 代码非常通用,无需修改核心代码,就可以适用几乎所有三选一模糊查询,如产品信息查询系统等。 3. 使用方便无比,修改好conn.asp几个参数后,其他所有内容几乎都由excel表格控制,直接支持所有二维表哦。 asp excel农村农家书屋图书在线检索系统 v201904 更新日志 1. 使用最新版查询系统界面,更美观 2. 使用搜索语句,速度性能更优秀 3. 优化数据库后缀识别算法 4. 优化表识别,不必非得sheet1表 5. 解决跳转提示乱码,兼容查询条件部分无效(1-3条件) 6. 重新编辑了使用说明书 asp excel农村农家书屋图书在线检索系统使用 使用建议: 直接通过FTP上传即可使用,建议先直接上传查询测试。 前台访问:http://网址/目录/ (上传直接使用,无需mysql数据库等支持) 然后notepad 打开inc/conn.Asp查看参数网页对应关系。 然后打开默认自带数据库对比查询结果,查看对应关系。 xls版打开方式:可以直接双击打开,xls格式Excel文件查看。 使用须知: 1. 请勿将本系统用于政策法规不允许用途 2. 使用本系统请注意隐私保护 3. 请用于本单位查询,切勿冒充其他单位发布查询。 使用步骤: 参数修改 1.记事本打开inc/conn.asp修改网站标题、查询条件等参数,具体见该文件见里面文字说明。 数据转化 如果已是全文本二维表,直接可以查询到数据而不报错,那么可以忽略以下三步: 1.新建excel文件:新建book1.xls文件--->全选表格--->格式--->单元格--->数字--->选择文本--->确定 2.去除原来格式:打开原来.xls数据库--->复制表格二位表部分--->新建记事本文件--->粘帖--->全选--->复制 3.粘帖去格式数据到新文件:将复制结果粘帖到book1.xls--->保存文件--->修改文件名(下来选项名称) 源码上传 1.源码上传:保持原有结构上传到网站即可直接使用,上传请注意编码(gb2312),具体可以看视频教程。 数据上传 1.上传方式:FTP工具上传(推荐);远程桌面上传;在线文件管理工具管理;等。 2.通过指定编码(即字符集:gb2312)上传代码和数据,上传到网站数据库目录下。 3.新增查询类别:新上传一个数据。注意后缀和原来一致。查询条件要和inc/conn.Asp设置一样。 4.减少查询类别:请删除数据库目录下对应文件名, 5.更改查询类别:重命名相应文件名。 6.修改数据内容:上传新转数据替换原来同名数据。 特别强调(即二维表规则) 1.只支持一行列标题:即多行列标题合并为一行(相当于为每列重新这只列标题) 2.不支持合并单元格:拆分单元格后把各单元格都填充拆分前内容。  asp excel农村农家书屋图书在线检索系统截图 相关阅读 同类推荐:站长常用源码
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值