怎样用asp实现,下载指定网址文件,并重命名后保存到本地服务器上?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了怎样用asp实现,下载指定网址文件,并重命名后保存到本地服务器上?相关的知识,希望对你有一定的参考价值。

说明:1、比如指定网址为"http://www.xxx.com/1.txt"
2、通过一个按钮,把指定网址文件(1.txt)重命名后保存到服务器跟目录下。
3、要asp源码,并使用VBScript脚本。
指定文件为xml格式

参考技术A download.asp
<%
'Code By oday

url =Trim(Request.QueryString("url")) '注意URL路径上的文件不能是被IIS解析的,如.txt就不行,要用的话自己改个后缀
fname=Trim(Request.QueryString("fname"))

if url <> "" then 'and fname<>"" then
Set xPost = CreateObject("Microsoft.XMLHTTP")
xPost.Open "GET",url,False
xPost.Send()
Set sGet = CreateObject("ADODB.Stream")
sGet.Mode = 3
sGet.Type = 1
sGet.Open()
sGet.Write(xPost.responseBody)
sGet.SaveToFile Server.MapPath(".")&"/"&fname,2
set sGet = nothing
set sPOST = nothing
response.Write("下载成功!<br>")
end if

%>
test.asp
<script>
location.href="download1.asp?url="+escape("http://58.211.102.206/hi/流行音乐/青花瓷.mp3")+"&fname=demo.mp3"
</script>

现在 这个可以运行了!!原来那个 ajax 有点问题!本回答被提问者采纳
参考技术B Dim Stream
Dim Contents
Dim FileName
Dim TrueFileName
Dim FileExt
Const adTypeBinary = 1
Response.Clear
Response.ContentType = "application/ms-download"
Response.AddHeader "content-disposition", "attachment; filename="&softname&"." & F_Ext & ""
Set Stream = server.CreateObject("ADODB.Stream")
Stream.Type = adTypeBinary
Stream.Open
Stream.LoadFromFile Server.MapPath(""&downurl&"")
While Not Stream.EOS
Response.BinaryWrite Stream.Read(1024 * 64)
Wend
Stream.Close
Set Stream = Nothing
Response.Flush
Response.End
参考技术C 建议去看一下ASP采集原理

纯js实现文件下载并重命名功能

纯js实现文件下载并重命名功能

来源: https://www.cnblogs.com/vipzhou/p/10700130.html

/**
 * 获取 blob
 * @param  String url 目标文件地址
 * @return cb 
 */
function getBlob(url,cb) 
        var xhr = new XMLHttpRequest();
        xhr.open(‘GET‘, url, true);
        xhr.responseType = ‘blob‘;
        xhr.onload = function() 
                if (xhr.status === 200) 
                    cb(xhr.response);
                
        ;
        xhr.send();


/**
 * 保存
 * @param  Blob blob     
 * @param  String filename 想要保存的文件名称
 */
function saveAs(blob, filename) 
    if (window.navigator.msSaveOrOpenBlob) 
            navigator.msSaveBlob(blob, filename);
     else 
            var link = document.createElement(‘a‘);
            var body = document.querySelector(‘body‘);

            link.href = window.URL.createObjectURL(blob);
            link.download = filename;

            // fix Firefox
            link.style.display = ‘none‘;
            body.appendChild(link);

            link.click();
            body.removeChild(link);

            window.URL.revokeObjectURL(link.href);
    ;


/**
 * 下载
 * @param  String url 目标文件地址
 * @param  String filename 想要保存的文件名称
 */
function download(url, filename) 
    getBlob(url, function(blob) 
        saveAs(blob, filename);
    );
;

download(‘https://www.baidu.com/img/baidu_resultlogo@2.png‘, ‘ab.png‘)
?

以上是关于怎样用asp实现,下载指定网址文件,并重命名后保存到本地服务器上?的主要内容,如果未能解决你的问题,请参考以下文章

vbs拷贝指定文件并重命名

bat脚本照片复制重命名?

纯js实现文件下载并重命名功能

怎么用bat复制指定的一个文件到指定文件夹,并重命名?

ASP.NET实现导出word,在IE6中可以下载保存但在IE8中却不能??

js多文件下载并重命名