假设现在有一个字符串 s, 然后如何生成一个HTML文件然后提供给用户下载.过程中不保存该文件.还有, 当打开保存对话框时, 如何设定默认的保存文件名?!谢谢解答!
解决方案 »
- asp.net中能让fckeditor自动保存的问题
- C++写的OXC截屏控件想在BS上作为网页Active控件供客户端使用,VS上显示灰色
- 弹出登录窗口 ajax实现 进行验证的问题
- 急 急,在线等 谢谢: asp.net FileUpload与页面数据导出的问题
- Gridview自带的编辑功能问题
- 帮忙写一条SQL语句
- 求教下限制必须选择CheckBoxList中的一项的问题
- 一个小小的问题,帮忙看一下
- PlaceHolder 问题!在线等 问题解决马上结帖!
- datalist checkbox全选用js怎么实现?
- petshop4.0安装完后不能运行!!
- 主窗口location=""可以防止百度强行设为主窗口,但其它子窗口中location.href="default.aspx"失效
第一:生成一个文件,可以考虑生成在一个临时文件夹里,这样可以定时清空文件夹
第二:保存对话框的文件类型是没办法设置的。 除非是c/s模式------------------------------------------------------------我想应该有可能的实现, 两种都有可能.
我看DISCUZ!论坛就有这种东西, 会将短消息生成一个HTML文件, 然后提示用户保存, 而且默认保存的文件名已输入好.
主 题: asp.net为什么弹不出保存对话框
http://community.csdn.net/Expert/topicview.asp?id=5284779
---------------------------------------------
抱歉,没听明白你的意思,但我想实现的功能是保存文件。
在服务器端生成临时文件,然后在客户端下载,
在Global.asax的Session_End事件中删除临时文件。现在希望不在服务器端生成这个临时文件,能直接在客户端生成该文件。
我用了FSO直接在客户端生成文件,但是这样做要求客户端放开权限,安全级别低,不推荐使用。我也想知道有没有更好的方法!
string fileName = Request.QueryString["file"].ToString();
System.IO.FileInfo file = new FileInfo(fileName); if (!File.Exists(file.FullName) )
{
Response.Clear();
Response.End();
return;
}
string DEFAULT_CONTENT_TYPE = "application/unknown";
RegistryKey regkey,fileextkey;
string filecontenttype;
try
{
regkey=Registry.ClassesRoot;
fileextkey=regkey.OpenSubKey(file.Extension);
filecontenttype=fileextkey.GetValue("Content Type",DEFAULT_CONTENT_TYPE).ToString();
}
catch
{
filecontenttype=DEFAULT_CONTENT_TYPE;
}
Response.Clear();
Response.AddHeader("Content-Disposition","attachment;filename="+HttpUtility.UrlEncode(file.Name));
Response.AddHeader("Content-Length",file.Length.ToString());
//Response.ContentType="application/x-zip-compressed";
Response.ContentType= filecontenttype;
Response.Charset="UTF-8";
Response.WriteFile(HttpUtility.HtmlEncode(file.FullName));
Response.End();