第16卷第3期2001年9胃北京机械工业学院学报JournalBej)ir.gI嗽i他eMadn茁yⅧ.16No3Sep.2001文章编号:1008—1658(2001)03—0031—05搜索引擎的实现方法及其改进殷旭(北京机械工业学院计算机厦自动化系,北京100085)摘要:以具体的程序剖析j利用ASP(ActiveServerPages)技术实现搜索引擎的原理及方法,并对目前存在的方法进行了适当的改进,将文件名称的链接改为文件标题的链接,更好地反映搜索文件的内容.具有一定的实际应嗣价值。关键词:搜索引擎;ActiveServerPages;链接中圈分类号:TP3111文献标识码:BInternet是一片浩瀚的信息海洋.有成千上万数不清的各种信息和资料.要想快速准确地找到自己所需要的信息,就需要搜索引擎的帮助。搜索引擎是网上查询的一项重要应用.如果是上网.则要进入搜索引擎站点+借助该站点所提供的服务来搜索文件。目前,各站点提供的信息量非常丰富+如何使上网者能够在本站所提供的信息中,更快地找到他们所要的东西显得尤为重要。1搜索文件的基础在ASP程序中,要想存取文件,必需先建立FileSystemObject对象+然后才能建立File对象。FileSystemObject对象不仅提供文件存取功能.更可以用来搜索文件夹及文件⋯.下面就介绍一下Fi1esystemObjec门十象与文件搜索有关的功能。1.1搜索文件夹及文件Folder对象假设我们要从某一文件夹/source开始搜索文件,首先必须知道该文件夹含有哪些文件、哪些子文件夹等,通过Scripting对象库所提供的Fi1esysIemObject对象的子对象Folder对象,便可轻易地获取这些信息。’先建立FileSystemObject对象Setfs=ServerCreatObjeet(“Scripting.FileSystemOhject”)’再取得/source文件夹的实际路径FullPath=Server.MapPath(“/~ource”)’建立SOL!roe文件夹对应的Folder对象:fdSetfd=fs.GetFolder(FullPath)’注意:一定要传入实际路径名。File对象及Files集合对象Folder对象的Files属性是一个集合对象,所代表的是该文件夹所有File对象的集合.峨稿已掘;2~1)1—03一作者筒介殷~lil(1964一)。女.安徽肥东^.北京机械工业学院计算机及自动化摹讲怖.磺士.主要从事丹培数据库.Intern吐应甩研究。维普资讯http://www.cqvip.com32北京机械工业学院学报第16卷列举/source文件夹中的所有文件方法为ForEachfInfd.FilesResponse.Writef,Name&“(BR)”NextSuhFolders集合对象Folder对象的SubFoMers属性也是一个集合对象,所代表的是该文件夹所有子Folder对象的集合.列举/source文件夹中的所有子文件夹方法为ForEachsfdInfd.SubFddersResponse.Writesfd.Name&“(BR)”Next1,2搜索文件的内容除了搜索文件夹及文件外,有时候我们也希望搜索文件的内容.以检查该文件是否含有某些文字,方法如下:Setfs=Se~er.CreatObject(“Scripting.FileSystemObject”)FullPath=Se~er.MapPath(“/source”)Setfo=fs.OpenTextFile(Fu[1Puth)’打开文件Content=fo.ReadAll’读取文件所有内容IfInStr(content,S)>OThen’s为欲搜索的字符串’表示该文件中含有s字符串EndIf2制作搜索引擎采用的技巧2.1递归搜索所有文件夹想要写出搜索引擎程序.除了实现单一文件夹的洲览方法之外.还必须能够实现搜索所有文件夹的所有文件,此时必需使用VBScript的“递归调用”,实现方法如下:subListFolder(fd)’fd为一folder对象F0rEachsfdInfd,SubFoldersRes∞n5e.Writesfd.name&“《B)”ListFoIdersfdNextENDSub2.2建立文件及文件夹链接标记建立文件夹的HTML链接作用是在测览上面显示如/source的链接,方法如下:FunctionFolderLink(Path)URLPath=Server.URLEneode(UnMapPath(Path))FoldarLink=“(AHREF=”&URu]Bth&。)”维普资讯http://www.cqvip.com第3期股旭:搜索引擎的实现方法及其改进33FolderLink=“