日期:2014-05-19  浏览次数:20846 次

怎样实现弹出“另存为”窗口
注:WEB应用!

//弹出打开文件窗口
                //Stream   myStream;
                //SaveFileDialog   saveFileDialog1   =   new   SaveFileDialog();

                //saveFileDialog1.InitialDirectory   =   "c:\\Documents   and   Settings\\zwy\\桌面\\ ";
                //saveFileDialog1.Filter   =   "txt   files   (*.txt)|*.txt|All   files   (*.*)|*.* ";
                //saveFileDialog1.FilterIndex   =   2;
                //saveFileDialog1.RestoreDirectory   =   true;

                //if   (saveFileDialog1.ShowDialog()   ==   DialogResult.OK)
                //{
                //         if   ((myStream   =   saveFileDialog1.OpenFile())   !=   null)
                //         {
                //                 //进行赋值
                //                 string   filename   =   openFileDialog1.FileName;
                //         }
                //}
winForm   这里有!
望各位高手不吝赐教!!!

------解决方案--------------------
好象是加个head,你到博客园搜下,前几天还看到过
------解决方案--------------------
string path = Server.MapPath(this.xlfile.Text+ ".xls ");

System.IO.FileInfo file = new System.IO.FileInfo(path);
Response.Clear();
Response.Charset= "GB2312 ";
Response.ContentEncoding=System.Text.Encoding.UTF8;
// 添加头信息,为 "文件下载/另存为 "对话框指定默认文件名
Response.AddHeader( "Content-Disposition ", "attachment; filename= " + Server.UrlEncode(file.Name));
// 添加头信息,指定文件大小,让浏览器能够显示下载进度
Response.AddHeader( "Content-Length ", file.Length.ToString());

// 指定返回的是一个不能被客户端读取的流,必须被下载
Response.ContentType = "application/ms-excel ";

// 把文件流发送到客户端
Response.WriteFile(file.FullName);
// 停止页面的执行

Response.End();
------解决方案--------------------
顶!!