由于要做一个mp3下载的东西,单击下载,会被Media Player打开播放, 保存不了,甚是不便,网上搜了半天,终于找到解决方案,现帖出来给大家。
try
...{
FullFileName = Server.MapPath(FileName); //FileName--要下载的文件名
FileInfo DownloadFile= new FileInfo(FullFileName);
if(DownloadFile.Exists)
...{
Response.Clear();
Response.ClearHeaders();
Response.Buffer=false;
Response.ContentType="application/octet-stream";
Response.AppendHeader("Content-Disposition","attachment;filename="
+HttpUtility.UrlEncode(DownloadFile.FullName,System.Text.Encoding.ASCII));
Response.AppendHeader("Content-Length",DownloadFile.Length.ToString());
Response.WriteFile(DownloadFile.FullName);
Response.Flush();
Response.End();
}
else
...{
//文件不存在
}
}
catch
...{
//文件不存在
}
...{
FullFileName = Server.MapPath(FileName); //FileName--要下载的文件名
FileInfo DownloadFile= new FileInfo(FullFileName);
if(DownloadFile.Exists)
...{
Response.Clear();
Response.ClearHeaders();
Response.Buffer=false;
Response.ContentType="application/octet-stream";
Response.AppendHeader("Content-Disposition","attachment;filename="
+HttpUtility.UrlEncode(DownloadFile.FullName,System.Text.Encoding.ASCII));
Response.AppendHeader("Content-Length",DownloadFile.Length.ToString());
Response.WriteFile(DownloadFile.FullName);
Response.Flush();
Response.End();
}
else
...{
//文件不存在
}
}
catch
...{
//文件不存在
}
另搜到net_lover(【孟子E章】)的解答,只能保存当前的URL文件名。下面是代码,可以弹出带颜色的对话框
onclick="document.execCommand('SaceAs')"
<input onclick="a()">
<script>
sInitColor=null
function a()
...{
if (sInitColor == null)
var sColor = document.all.dlgHelper.ChooseColorDlg();
else
var sColor = document.all.dlgHelper.ChooseColorDlg(sInitColor);
sColor = sColor.toString(16);
if (sColor.length < 6) ...{
var sTempString = "000000".substring(0,6-sColor.length);
sColor = sTempString.concat(sColor);
}
sColor = "#" + sColor
alert(sColor)
}
function a()
...{
if (sInitColor == null)
var sColor = document.all.dlgHelper.ChooseColorDlg();
else
var sColor = document.all.dlgHelper.ChooseColorDlg(sInitColor);
sColor = sColor.toString(16);
if (sColor.length < 6) ...{
var sTempString = "000000".substring(0,6-sColor.length);
sColor = sTempString.concat(sColor);
}
sColor = "#" + sColor
alert(sColor)
}
</script>
<OBJECT id=dlgHelper CLASSID="clsid:3050f819-98b5-11cf-bb82-00aa00bdce0b" width="0px" height="0px"></OBJECT>