zoukankan      html  css  js  c++  java
  • ASP.NET 和 WinForm 弹出另存为对话框

    1.ASP.NET

     Response.AddHeader("", "text/plain");
            Response.AddHeader("Content-Disposition", "attachment;filename=qwe" + DateTime.Now.ToString("yyyymmss")+".txt");
            Response.Write(str);
            Response.End(); 

    ASP.NET使用Page类里面的Response属性的AddHeader方法来制造另存为对话框,原理是给Http流添加键值对来进行文件流传输到浏览器的控制。

    键值对1:"","text/plain" 表示text/plain是无格式正文(同类的还有:text/html是html格式的正文,text/xml忽略xml头所指定编码格式而默认采用us-ascii编码,application/xml会根据xml头指定的编码格式来编码)

    键值对2:"Content-Disposition", "attachment;filename=xxx"  Content-Disposition用来激活IE读取文件时的文件下载对话框 attachment声明包含附件
    2.WINFORM

    SaveFileDialog svl = new SaveFileDialog();
            svl.FileName = "qwe" + DateTime.Now.ToString("yyyymmss") + ".txt";
            svl.Filter = "(*.txt)|*.txt|" + "(*.*)|*.*";
            svl.RestoreDirectory = true;
            if (svl.ShowDialog() == DialogResult.OK)
            {
                StreamWriter sw = new StreamWriter(svl.FileName, true);
                sw.Write(str);
                sw.Close();
            }
            svl.Dispose();
    

     而WinForm则采用 SaveFileDialog控件来完成另存为对话框的弹出。

  • 相关阅读:
    浏览器同源政策及其规避方法---转阮大神
    js跨域详解
    js中top、self、parent
    杂记
    DOM 踩踩踩
    java idea 连接数据库
    数据库mySQL常用命令
    用迭代实现80人围成一圈逢3取出
    如何把通过类建立的对象存入数组中.
    面向对象编程
  • 原文地址:https://www.cnblogs.com/JhoneLee/p/2988740.html
Copyright © 2011-2022 走看看