IE下载 Office2007文件时 在下载对话框中变成ZIP文件

youufis 2009-04-24 03:47:23
服务器:win2000 server + iis5

在客户端IE下载Office2007文件时在下载对话框中变成ZIP文件,按照网上资料解决方法新增MIME文件类型:

.docx,application/vnd.openxmlformats-officedocument.wordprocessingml.document
.xlsx,application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
.pptx,application/vnd.openxmlformats-officedocument.presentationml.presentation

下载主要代码:

Response.AddHeader("Content-Length", Sfile.Length.ToString())
Response.ContentType = "application/octet-stream"
Response.WriteFile(SFilename)

但还是解决不了问题!请高手指点



...全文
721 8 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
cs1820 2010-08-18
  • 打赏
  • 举报
回复
我是客户端,服务器我不能接触到啊
fyxiaowan 2009-11-06
  • 打赏
  • 举报
回复
很好解决了我的问题....
youufis 2009-04-27
  • 打赏
  • 举报
回复
根据5楼 zsuswy 的提示 修改下载代码:

Response.ContentType = "" 分别对应下面MIME类型就可以了.

.docx,application/vnd.openxmlformats-officedocument.wordprocessingml.document
.xlsx,application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
.pptx,application/vnd.openxmlformats-officedocument.presentationml.presentation
zsuswy 2009-04-26
  • 打赏
  • 举报
回复
Response.ContentType = "application/vnd.ms-excel"
youufis 2009-04-24
  • 打赏
  • 举报
回复
1楼 wxg22526451 的代码下载文件是office2003 格式

string SFilename = Server.MapPath(@"app_data/123.xls");


office2007 文件格式与以前做了很大的变化,是xml格式文件了,office2003前是二进制,
gongsun 2009-04-24
  • 打赏
  • 举报
回复
up
wxg22526451 2009-04-24
  • 打赏
  • 举报
回复
点击下载保存时 下载类型显示是 office excel97-2003文件
wxg22526451 2009-04-24
  • 打赏
  • 举报
回复
试了下xp+iis5.1 下载office2007的excel文件,
不用配置别的可以正常下载和打开

protected void Button1_Click(object sender, EventArgs e)
{
string SFilename = Server.MapPath(@"app_data/123.xls");
FileInfo Sfile = new FileInfo(SFilename);

//Response.AddHeader("Content-Length", Sfile.Length.ToString());
//Response.ContentType = "application/octet-stream";
//Response.WriteFile(SFilename);

Response.Clear();
Response.ClearContent();
Response.ClearHeaders();
Response.AddHeader("Content-Disposition", "attachment;filename=" + SFilename);
Response.AddHeader("Content-Length", Sfile.Length.ToString());
Response.AddHeader("Content-Transfer-Encoding", "binary");
Response.ContentType = "application/octet-stream";
Response.ContentEncoding = System.Text.Encoding.GetEncoding("gb2312");
Response.WriteFile(SFilename);
Response.Flush();
Response.End();

}

62,242

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧