先上传, 下载 , 再删除服务上的
string fileName = "WeekReport" + DateTime.Now.ToString("yyyyMMdd") + ".xls";//客户端保存的文件名
string filePath = Server.MapPath("../UserFiles/TempFiles/") + fileName;
//保存代码
//下载文件
DownFile(fileName, filePath);
/// <summary>
/// 以字符流的形式下载文件
/// </summary>
/// <param name="fileName">保存的文件名</param>
/// <param name="filePath">服务器文件下载路径</param>
private void DownFile(string fileName, string filePath)
{
FileStream fs = new FileStream(filePath, FileMode.Open);
byte[] bytes = new byte[(int)fs.Length];
fs.Read(bytes, 0, bytes.Length);
fs.Close();
Response.ContentType = "application/octet-stream"; //通知浏览器下载文件而不是打开
Response.AddHeader("Content-Disposition", "attachment; filename=" + HttpUtility.UrlEncode(fileName, System.Text.Encoding.UTF8));
Response.BinaryWrite(bytes);
Response.Flush();
//刪除文件
System.IO.FileInfo file = new System.IO.FileInfo(filePath);
if (file.Exists)
{
file.Delete();
}
Response.End();
}