一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務(wù)器之家:專注于服務(wù)器技術(shù)及軟件下載分享
分類導(dǎo)航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術(shù)|正則表達(dá)式|C/C++|IOS|C#|Swift|Android|VB|R語(yǔ)言|JavaScript|易語(yǔ)言|vb.net|

服務(wù)器之家 - 編程語(yǔ)言 - ASP教程 - 硬盤文件搜索代碼(ASP類)

硬盤文件搜索代碼(ASP類)

2019-11-01 12:56asp代碼網(wǎng) ASP教程

硬盤文件搜索代碼(ASP類)

  1. <%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>  
  2. <%  
  3. dim st  
  4. st=timer()  
  5. '*************************************************************  
  6. '*************搜索硬盤文件的類SearchFile *************  
  7. '*************調(diào)用方法: *************  
  8. '*************Set newsearch=new SearchFile '聲明 *************  
  9. '*************newsearch.Folder="F:+E:"'傳入搜索源*************  
  10. '*************newsearch.keyword="匯編" '關(guān)鍵詞*************  
  11. '*************newsearch.Search '開(kāi)始搜索*************  
  12. '*************Set newsearch=Nothing '結(jié)束*************  
  13. '*************Copyright(c)醉雨梧桐小站 *************  
  14. '*************http://btyz.51web.cn/ *************  
  15. '*************************************************************  
  16. Class SearchFile  
  17. dim Folders '傳入絕對(duì)路徑,多路徑使用+號(hào)連接,不能有空格  
  18. dim keyword '傳入關(guān)鍵詞  
  19. dim objFso '定義全局變量  
  20. dim Counter '定義全局變量,搜索結(jié)果的數(shù)目  
  21. '*****************初始化**************************************  
  22. Private Sub Class_Initialize  
  23. Set objFso=Server.CreateObject("Scripting.FileSystemObject")  
  24. Counter=0 '初始化計(jì)數(shù)器  
  25. End Sub  
  26. '************************************************************  
  27. Private Sub Class_Terminate  
  28. Set objFso=Nothing  
  29. End Sub  
  30. '**************公有成員,調(diào)用的方法***************************  
  31. Function Search  
  32. Folders=split(Folders,"+") '轉(zhuǎn)化為數(shù)組  
  33. keyword=trim(keyword) '去掉前后空格  
  34. if keyword="" then  
  35. Response.Write("<font color='red'>關(guān)鍵字不能為空</font><br/>")  
  36. exit Function  
  37. end if  
  38. '判斷是否包含非法字符  
  39. flag=instr(keyword,"\") or instr(keyword,"/")  
  40. flag=flag or instr(keyword,":")  
  41. flag=flag or instr(keyword,"|")  
  42. flag=flag or instr(keyword,"&")  
  43.  
  44. if flag then '關(guān)鍵字中不能包含\/:|&  
  45. Response.Write("<font color='red'>關(guān)鍵字不能包含/\:|&</font><br/>")  
  46. Exit Function '如果包含有這個(gè)則退出  
  47. end if  
  48. '多路徑搜索  
  49. dim i  
  50. for i=0 to ubound(Folders)  
  51. Call GetAllFile(Folders(i)) '調(diào)用循環(huán)遞歸函數(shù)  
  52. next  
  53. Response.Write("共搜索到<font color='red'>"&Counter&"</font>個(gè)結(jié)果")  
  54. End Function  
  55. '***************歷遍文件和文件夾******************************  
  56. Private Function GetAllFile(Folder)  
  57. dim objFd,objFs,objFf  
  58. Set objFd=objFso.GetFolder(Folder)  
  59. Set objFs=objFd.SubFolders  
  60. Set objFf=objFd.Files  
  61. '歷遍子文件夾  
  62. dim strFdName '聲明子文件夾名  
  63. '*********歷遍子文件夾******  
  64. on error resume next  
  65. For Each OneDir In objFs  
  66. strFdName=OneDir.Name  
  67. '系統(tǒng)文件夾不在歷遍之列  
  68. If strFdName<>"Config.Msi" EQV strFdName<>"RECYCLED" EQV strFdName<>"RECYCLER" EQV strFdName<>"System Volume Information" Then  
  69. SFN=Folder&"\"&strFdName '絕對(duì)路徑  
  70. Call GetAllFile(SFN) '調(diào)用遞歸  
  71. End If  
  72. Next  
  73. dim strFlName  
  74. '**********歷遍文件********  
  75. For Each OneFile In objFf  
  76. strFlName=OneFile.Name  
  77. 'desktop.ini和folder.htt不在列取范圍  
  78. If strFlName<>"desktop.ini" EQV strFlName<>"folder.htt" Then  
  79. FN=Folder&"\"&strFlName  
  80. Counter=Counter+ColorOn(FN)  
  81. End If  
  82. Next  
  83. '***************************  
  84. '關(guān)閉各對(duì)象實(shí)例  
  85. Set objFd=Nothing  
  86. Set objFs=Nothing  
  87. Set objFf=Nothing  
  88. End Function  
  89. '*********************生成匹配模式***********************************  
  90. Private Function CreatePattern(keyword)  
  91. CreatePattern=keyword  
  92. CreatePattern=Replace(CreatePattern,".","\.")  
  93. CreatePattern=Replace(CreatePattern,"+","\+")  
  94. CreatePattern=Replace(CreatePattern,"(","\(")  
  95. CreatePattern=Replace(CreatePattern,")","\)")  
  96. CreatePattern=Replace(CreatePattern,"[","\[")  
  97. CreatePattern=Replace(CreatePattern,"]","\]")  
  98. CreatePattern=Replace(CreatePattern,"{","\{")  
  99. CreatePattern=Replace(CreatePattern,"}","\}")  
  100. CreatePattern=Replace(CreatePattern,"*","[^\\\/]*") '*號(hào)匹配  
  101. CreatePattern=Replace(CreatePattern,"?","[^\\\/]{1}") '?號(hào)匹配  
  102. CreatePattern="("&CreatePattern&")+" '整體匹配  
  103. End Function  
  104. '**************************搜索并使關(guān)鍵字上色*************************  
  105. Private Function ColorOn(FileName)  
  106. dim objReg  
  107. Set objReg=new RegExp  
  108. objReg.Pattern=CreatePattern(keyword)  
  109. objReg.IgnoreCase=True  
  110. objReg.Global=True  
  111. retVal=objReg.Test(FileName) '進(jìn)行搜索測(cè)試,如果通過(guò)則上色并輸出  
  112. if retVal then  
  113. OutPut=objReg.Replace(FileName,"<font color='#FF0000'>$1</font>") '設(shè)置關(guān)鍵字的顯示顏色  
  114. '***************************該部分可以根據(jù)需要修改輸出************************************  
  115. OutPut="<a href='#'>"&OutPut&"</a><br/>"  
  116. Response.Write(OutPut) '輸出匹配的結(jié)果  
  117. '*************************************可修改部分結(jié)束**************************************  
  118. ColorOn=1 '加入計(jì)數(shù)器的數(shù)目  
  119. else  
  120. ColorOn=0  
  121. end if  
  122. Set objReg=Nothing  
  123. End Function  
  124. End Class  
  125. '************************結(jié)束類SearchFile**********************  
  126. %>  
  127. <html>  
  128. <head>  
  129. <meta http-equiv="Content-Type" content="text/html; charset=gb2312">  
  130. <title>Media搜索</title>  
  131. </head>  
  132.  
  133. <body>  
  134. <form name="form1" method="post" action="<% =Request.ServerVariables("PATH_INFO")%>">  
  135. 關(guān)鍵詞:  
  136. <input name="keyword" type="text" id="keyword">  
  137. <input type="submit" name="Submit" value="搜索">  
  138. <a href="help.htm" target="_blank">高級(jí)搜索幫助</a>  
  139. </form>  
  140. <%  
  141. dim keyword  
  142. keyword=Request.Form("keyword")  
  143. if keyword<>"" then  
  144. Set newsearch=new SearchFile  
  145. newsearch.Folders="E:\Media+F:"  
  146. newsearch.keyword=keyword  
  147. newsearch.Search  
  148. Set newsearch=Nothing  
  149. response.Write("<br/>費(fèi)時(shí):"&(timer()-st)*1000&"毫秒")  
  150. end if  
  151.  
  152. %>  
  153. </body>  
  154. </html>  

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 国产精品女主播自在线拍 | 亚洲国产在线播放在线 | 亚洲毛片基地 | 国内自拍2020 | 狠狠色狠狠色综合日日小蛇 | 热久久最新视频 | 日本大乳护士的引诱图片 | 男人午夜免费视频 | 日本天堂影院在线播放 | free性日本| 奇米影视中文字幕 | 息与子中文字幕完整在线 | 亚洲黄色成人 | 天堂网在线网站成人午夜网站 | 女老板用丝袜脚夹我好爽 | 欧美日韩综合网在线观看 | 国产成人一区二区三区在线视频 | 国产精品视频二区不卡 | 天天舔天天干 | 精品国产理论在线观看不卡 | 兽皇videos日本另类 | 国产激情视频在线 | 欧美在线国产 | 男人使劲躁女人视频免费 | 色欧美在线 | 小早川怜子视频在线观看 | 久久丫线这里只精品 | 国产成人91高清精品免费 | 婚色阿花在线全文免费笔 | 久热这里只有精品99国产6 | 天天色踪合 | 国产福利片在线 易阳 | 男人天堂色男人 | 久久精选视频 | 99欧美精品| 国产精品视频免费看 | 午夜欧美精品久久久久久久久 | 国产成人99精品免费观看 | 乳色吐息讲的是什么 | 免费人成网址在线观看国内 | 十八女下面流水不遮免费 |