FileStream MyFileStream; long FileSize; MyFileStream = new FileStream=("c:\\a.doc",FileMode.Open); FileSize = MyFileStream.Length; byte[] Buffer = new byte[(int)FileSize]; MyFileStream.Read(Buffer, 0, (int)FileSize); MyFileStream.Close(); Response.AddHeader("Content-Disposition", "attachment;filename="c:\\a.doc"); Response.ContentType="application/octet-stream"; Response.BinaryWrite(Buffer);
运行,IE出现打开、下载文件的对话框。但是如果选择直接打开,Word却打不文件。
试了几次都不行,还以为是2003安全性的问题。 后来想到ASP.NET缓存,于是加了两行代码 Response.Flush(); Response.Close(); 结果OK。