'********************************************** * ***************
'функция
' Функция: использовать потоки для сохранения файлов.
'Параметры: from (адрес удаленного файла), tofile (место сохранения файла)
'********************************************** * ***************
Частная функция SaveFiles (по ссылке из, по ссылке на файл)
Тусклые данные
Данные = ПолучитьДанные (из, 0)
Ответ. Запись успешно сохранена: &formatnumber(len(Datas)/1024*2,2)&Kb
ответ.Flush
если номер формата(len(Datas)/1024*2,2)>1, то
ADOS.Тип = 1
ADOS.Режим =3
ADOS.Открыть
ADOS.write данные
ADOS.SaveToFile server.mappath(tofile),2
ADOS.Закрыть()
еще
Response.Write не удалось сохранить: размер файла и номер формата (len(imgs)/1024*2,2)&КБ, менее 1 КБ.
ответ.Flush
конец, если
конечная функция
'********************************************** * ***************
' функция (частная)
' Функция: используйте fso, чтобы определить, существует ли файл. Если он существует, он вернет true. Если он не существует, он вернет false.
'Параметр: filespes (расположение файла)
'********************************************** * ***************
Частная функция IsExists (по ссылке на файл)
Если (FSO.FileExists(server.MapPath(filespec))) Тогда
ИсСуществует = Истина
Еще
ИсСуществует = Ложь
Конец, если
Конечная функция
'********************************************** * ***************
' функция (частная)
' Функция: используйте fso, чтобы определить, существует ли папка. Если она существует, возвращается true. Если она не существует, возвращается false.
'Параметр: папка (расположение папки)
'********************************************** * ***************
Частная функция IsFolder (папка по ссылке)
Если FSO.FolderExists(server.MapPath(Папка)) Тогда
Исфолдер = Истина
Еще
Исфолдер = ложь
Конец, если
Конечная функция
'********************************************** * ***************
' функция (частная)
' Функция: используйте fso для создания папки
'Параметр: fldr (расположение папки)
'********************************************** * ***************
Частная функция CreateFolder (byref fldr)
ж
Установите f = FSO.CreateFolder(Server.MapPath(fldr))
CreateFolder = f.Path
Установить f=ничего
Конечная функция
'********************************************** * ***************
'функция (публичная)
' Функция: сохранять файлы и автоматически создавать многоуровневые папки.
'Параметры: fromurl (адрес удаленного файла), tofiles (место сохранения)
'********************************************** * ***************
Открытая функция SaveData (по ссылке FromUrl, по ссылке ToFiles)
ToFiles=обрезать(Заменить(ToFiles,//,/))
flName=ToFiles
флдр=
Если IsExists(flName)=false, то
GetNewsFold=split(flName,/)
Для i=0 до Ubound(GetNewsFold)-1
если флдр= тогда
fldr = GetNewsFold (я)
еще
fldr=fldr&/&GetNewsFold(i)
конец, если
Если IsFolder(fldr)=false, то
Создать папку fldr
Конец, если
Следующий
Сохранить файлы из URL, flName
Конец, если
Конечная функция
'********************************************** * ***************
'функция (публичная)
' Функция: получение удаленных данных
'Параметры: url (адрес удаленного файла), getmode (режим: 0 – двоичный, 1 – китайская кодировка)
'********************************************** * ***************
Открытая функция GetData (url по ссылке, по ссылке GetMode)
'в случае ошибки продолжить дальше
Исходный код = OXML.open (GET, URL, ложь)
ОХМЛ.отправить()
если OXML.readystate<>4, то выходим из функции
если GetMode=0, то
GetData = OXML.responseBody
еще
GetData = BytesToBstr(OXML.responseBody)
конец, если
если err.number<>0, то err.Clear
Конечная функция
'********************************************** * ***************
'функция (публичная)
' Функция: отформатировать адрес удаленного изображения как локальное местоположение.
'Параметры: imgurl (адрес удаленного изображения), imgfolder (локальный каталог изображений), fristname (добавленное имя префикса)
'********************************************** * ***************
Открытая функция FormatImgPath(byref ImgUrl,byref ImgFolder,byref FristName,byref noimg)
строкпуть=
ImgUrl=ImgUrl
если instr(ImgUrl,Nophoto) или lenb(GetData(ImgUrl,0))<=0, то
strpath=noimg
Ответ. Напишите &strpath& &vbcrlf
еще
если Instr(ImgUrl,.asp), то
strpath=FristName&_&Mid(ImgUrl, InStrRev(ImgUrl, =)+1)&.jpg
еще
strpath=FristName&_&Mid(ImgUrl, InStrRev(ImgUrl, /)+1)
конец, если
strpath = ImgFolder&/&strpath
strpath = Заменить(strpath,//,/)
if left(strpath,1)=/ then strpath=right(strpath,len(strpath)-1)
strpath = обрезка (strpath)
Ответ. Напишите &strpath& &vbcrlf
savedataImgUrl,strpath
конец, если
ФорматИмгПат = стрпуть
Конечная функция