• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    asp下实现替换远程文件为本地文件并保存远程文件的代码
    1、将下面的文本文件下载,并将.TXT改为remote.asp,里面有具体设置方法
    复制代码 代码如下:


    '添加资源时是否保存远程图片
    Const sSaveFileSelect=True

    '远程图片保存目录,结尾请不要加“/”
    Const sSaveFilePath="/images/News"

    '远程图片保存类型
    Const sFileExt="jpg|gif|bmp|png"

    '/////////////////////////////////////////////////////
    '作 用:替换字符串中的远程文件为本地文件并保存远程文件
    '参 数:
    '     sHTML        : 要替换的字符串
    '     sSavePath    : 保存文件的路径
    '     sExt         : 执行替换的扩展名
    Function ReplaceRemoteUrl(sHTML, sSaveFilePath, sFileExt)
        Dim s_Content
        s_Content = sHTML
        If IsObjInstalled("Microsoft.XMLHTTP") = False then
            ReplaceRemoteUrl = s_Content
            Exit Function
        End If

        Dim re, RemoteFile, RemoteFileurl,SaveFileName,SaveFileType,arrSaveFileNameS,arrSaveFileName,sSaveFilePaths
        Set re = new RegExp
        re.IgnoreCase = True
        re.Global = True
        re.Pattern = "((http|https|ftp|rtsp|mms):(\/\/|\\\\){1}((\w)+[.]){1,}(net|com|cn|org|cc|tv|[0-9]{1,3})(\S*\/)((\S)+[.]{1}("  sFileExt  ")))"
        Set RemoteFile = re.Execute(s_Content)
        For Each RemoteFileurl in RemoteFile
            SaveFileType = Replace(Replace(RemoteFileurl,"/", "a"), ":", "a")
            arrSaveFileName = Right(SaveFileType,12)
            sSaveFilePaths=sSaveFilePath  "/"
            SaveFileName = sSaveFilePaths  arrSaveFileName
            Call SaveRemoteFile(SaveFileName, RemoteFileurl)
            s_Content = Replace(s_Content,RemoteFileurl,SaveFileName)
        Next
        ReplaceRemoteUrl = s_Content
    End Function

    '////////////////////////////////////////
    '作 用:保存远程的文件到本地
    '参 数:LocalFileName ------ 本地文件名
    '       RemoteFileUrl ------ 远程文件URL
    '返回值:True ----成功
    '        False ----失败
    Sub SaveRemoteFile(s_LocalFileName,s_RemoteFileUrl)
        Dim Ads, Retrieval, GetRemoteData
        On Error Resume Next
        Set Retrieval = Server.CreateObject("Microsoft.XMLHTTP")
        With Retrieval
            .Open "Get", s_RemoteFileUrl, False, "", ""
            .Send
            GetRemoteData = .ResponseBody
        End With
        Set Retrieval = Nothing
        Set Ads = Server.CreateObject("Adodb.Stream")
        With Ads
            .Type = 1
            .Open
            .Write GetRemoteData
            .SaveToFile Server.MapPath(s_LocalFileName), 2
            .Cancel()
            .Close()
        End With
        Set Ads=nothing
    End Sub

    '////////////////////////////////////////
    '作 用:检查组件是否已经安装
    '参 数:strClassString ----组件名
    '返回值:True ----已经安装
    '     False ----没有安装
    Function IsObjInstalled(s_ClassString)
        On Error Resume Next
        IsObjInstalled = False
        Err = 0
        Dim xTestObj
        Set xTestObj = Server.CreateObject(s_ClassString)
        If 0 = Err Then IsObjInstalled = True
        Set xTestObj = Nothing
        Err = 0
    End Function
    %>

    2、调用方法:
    !--#include file="remote.asp"--> 

    文章入库的地方改成下面的代码 
    复制代码 代码如下:

    If sSaveFileSelect=True Then  
         Rs("Content")=ReplaceRemoteUrl(ArticleContent,sSaveFilePath,sFileExt)  
        Else  
         Rs("Content")=ArticleContent  
    End If 
    上一篇:asp下同一空间多绑多哥域名的方法
    下一篇:简单的ASP中经常用到的代码[推荐]第1/4页
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    asp下实现替换远程文件为本地文件并保存远程文件的代码 asp,下,实现,替换,远程,文件,