Как использовать FSO для поиска в файлах жестких дисков? Вы знаете, как искать в файлах жестких дисков для FSO? Если вы еще не понимаете этого, следуйте за редактором Foxin, и я пойму это.
<%@Language = "vbscript" codepage = "936"%>
<%
Dim St.
ST = TIMER ()
'***************************************************
'***************
'************ Метод звонка: ************
'************ SET Newssearch = New SearchFile' Declaration ************
'************ newsearch.folder = "f:+e:"' Пропустил источник поиска **************************************
'************ newsearch.keyword = "Компиляция"' Ключевое слово *********
'************ newsearch.search' Start Search ************
'************ Установить Newssearch = ничего' End *************
'***************************************************
Класс SearchFile
Dim Polders 'Проходит абсолютный путь, Mululetath использует знак + для подключения, без пробелов
Dim Keyword 'Пропуск ключевых слов
Dim objfso 'определить глобальные переменные
Dim Counter 'определить глобальные переменные, количество результатов поиска
'*****************
Private sub class_initialize
Установить objfso = server.createObject ("scripting.filesystemobject")
Счетчик = 0 'Инициализировать счетчик
Конец суб
'***************************************************
Приватный sub class_terminate
Установить objfso = ничего
Конец суб
'****************** ОБЩЕСТВЕННЫЙ Член, метод под названием *********************************
Функциональный поиск
Папки = сплит (папки, "+") 'преобразовать в массив
ключевое слово = trim (ключевое слово) 'Удалите пространства до и после
Если ключевое слово = "" Тогда
Response.write ("<font color = 'red'> ключевое слово не может быть пустым </font> <br/>")
Выходная функция
конец, если
'Просто определите, включены ли незаконные персонажи
flag = instr (ключевое слово, "") или instr (ключевое слово, "/")
flag = flag или instr (ключевое слово, ":")
flag = flag или instr (ключевое слово, "|")
flag = flag или instr (ключевое слово, "&")
Если флаг, то ключевое слово не может содержать /: | &
Response.write ("<font color = 'red'> ключевое слово не может содержать/: | & </font> <br/>")
Функция выхода 'Если это включено, выходите
конец, если
'Многоцелевой поиск
DIM I.
для i = 0 до ubund (папки)
Вызовать getallfile (папки (i)) 'Рекурсивная функция вызовов
следующий
Response.write («Всего было найдено результаты <font color = 'red'>» и counter & »</font>)
Конечная функция
'**************************************************
Частная функция getallfile (папка)
Dim objfd, objfs, objff
Установить objfd = objfso.getFolder (папка)
Установить objfs = objfd.subfolders
Установить objff = objfd.files
«Путешествие через подпапки
Dim Strfdname 'Объявите имя подпапки
'************ Посетите подпапки *******
при ошибке резюме следующим
Для каждого Onedir в objfs
strfdname = onedir.name
'Системная папка не включена в обход
Если strfdname <> "config.msi" eqv strfdname <> "recycled" eqv strfdname <> "recycler" eqv strfdname <> "Информация о объеме системы" тогда
Sfn = folder & "" & strfdname 'абсолютный путь
Вызовать getallfile (sfn) 'call recursion
Конец, если
Следующий
Dim Strflname
'************ В файл **********
Для каждого файла в objff
strflname = onefile.name
'Desktop.ini и Folder.htt не в диапазоне столбцов
Если strflname <> "desktop.ini" eqv strflname <> "folder.htt"
Fn = folder & "" & strflname
Счетчик = счетчик+Coloron (FN)
Конец, если
Следующий
'************************************************
'Закройте каждый экземпляр объекта
Установить objfd = ничего
Установить objfs = ничего
Установить objff = ничего
Конечная функция
'***************************
Частная функция CreatePattern (ключевое слово)
CreatePattern = ключевое слово
CreatePattern = reply (createPattern, ".", ".")
CreatePattern = reply (createPattern, "+", "+")
CreatePattern = reply (createPattern, "(", "(")
CreatePattern = reply (createPattern, ")", ")")
CreatePattern = reply (createPattern, "[", "[")
CreatePattern = reply (createPattern, "]", "]")
CreatePattern = replace (createPattern, "{", "{")
CreatePattern = replace (createPattern, "}", "}")
CreatePattern = reply (createPattern, "*", "[^//]*") '*Соответствует номеру
CreatePattern = replace (createPattern, "?", "[^//] {1}") '? Сопоставление номера
CreatePattern = "(" & createPattern & ")+" Общий матч
Конечная функция
'******************************
Частная функция Coloron (имя файла)
Dim objreg
Установить objreg = new Regexp
objreg.pattern = createPattern (ключевое слово)
objreg.ignorecase = true
objreg.global = true
retval = objreg.test (имя файла) 'Проверьте тест поиска, если он проходит, цвет и выход
Если возврат, тогда
Output = objreg.replace (имя файла, "<font color = '#ff0000'> $ 1 </font>") 'Установите цвет дисплея ключевого слова
'*******************************************************************
Output = "<a href = '#'>" & output & "</a> <br/>"
Response.write (output) 'результат сопоставления вывода
'***************************************************
Coloron = 1 'Количество добавленных счетчиков
еще
Coloron = 0
конец, если
Установить objreg = ничего
Конечная функция
Конечный класс
'****************************
%>
<html>
<голова>
<meta http-equiv = "content-type" content = "text/html; charset = gb2312">
<Title> www.csdn.com.cn </title>
</head>
<тело>
<form name = "form1" method = "post" action = "<% = request.servervariables (" path_info ")%>"> ">"> ">"> ">"> ">"> ">"> "
Ключевые слова:
<input name = "Keyword" type = "text" id = "Ключевое слово">
<input type = "отправить" name = "отправить" value = "search">
<a href = "help.htm" target = "_ blank"> расширенный поиск </a>
</form>
<%
Dim Keyword
Ключевое слово = request.form ("Keyword")
Если ключевое слово <> "" Тогда
Установить Newssearch = новый SearchFile
Newsearch.folders = "E: Media+F:"
newsearch.keyword = ключевое слово
Newssearch.search
Установить Newsearch = ничего
response.write ("<br/> трудоемкий:" & (timer ()-st)*1000 & "ms")
конец, если
%>
</body>
</html>
Если вы думаете, что этот метод FSO для поиска в файлах жестких дисков вам полезен, пожалуйста, дайте мне большие пальцы. Если вы хотите просмотреть более связанный контент, пожалуйста, следуйте каналу Wonew Technology. Спасибо за вашу поддержку!