我想别人在我的WEB服务器上下载文件,下面是我的代码,不知那里错了?
private void Button2_Click(object sender, System.EventArgs e)
{ //下载文件的代码那里错了
string fileUrl=Request.Params["rdweb/db.txt"];
string fileName=MapPath(fileUrl);
FileInfo file=new FileInfo(fileName);
Response.Clear();
Response.AppendHeader("Content-Disposition","attachment;filename="+file.Name);
Response.AppendHeader("Content-Length",file.Length.ToString());//这行错了???
Response.ContentType="application/octet-stream";
Response.WriteFile(file.FullName);
Response.End();
}
private void Button2_Click(object sender, System.EventArgs e)
{ //下载文件的代码那里错了
string fileUrl=Request.Params["rdweb/db.txt"];
string fileName=MapPath(fileUrl);
FileInfo file=new FileInfo(fileName);
Response.Clear();
Response.AppendHeader("Content-Disposition","attachment;filename="+file.Name);
Response.AppendHeader("Content-Length",file.Length.ToString());//这行错了???
Response.ContentType="application/octet-stream";
Response.WriteFile(file.FullName);
Response.End();
}
static string GetPage(string url)
{
HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url);
try
{
using (HttpWebResponse res = (HttpWebResponse)req.GetResponse())
{
using (StreamReader sr = new StreamReader(res.GetResponseStream()))
{
return sr.ReadToEnd();
}
}
}
catch (System.Exception e)
{
return e.Message;
}
finally
{
req.Abort();
}
}
{
FileInfo fi = new FileInfo(destFileName);
Response.Clear();
Response.ClearHeaders();
Response.Buffer = false;//与你程序不一样的第一个地方
Response.AppendHeader("Content-Disposition","attachment;filename="+HttpUtility.UrlEncode(destFileName));
Response.AppendHeader("Content-Length",fi.Length.ToString());
Response.ContentType =dr["FileExt"].ToString();//文件类型 我的是从数据库中读的 你自己改改
Response.WriteFile(destFileName);
Response.Flush();//这是我和你程序不一样的第二个地方
Response.End();}
else
{
Response.Write("<script langauge=javascript>alert('文件不存在!');history.go(-1);</script>");
Response.End();
}