asp.net(C#)做的图片下载程序在手机里的问题

sinat_33410993 2015-12-17 02:44:14
在手机端下载图片后(如:a.jpg),图片不能被直接打开,如果修改了文件名子,就可以打开了。
请教高人,有没有什么办法解决?

FileInfo DownloadFile = new FileInfo(filePath);
context.Response.Buffer = false;
//context.Response.ContentType = "application/octet-stream";
context.Response.ContentType = "image/gjpeg";
context.Response.AppendHeader("Content-Disposition", "attachment;filename=a.jpg";
context.Response.AppendHeader("Content-Length", DownloadFile.Length.ToString());
context.Response.WriteFile(DownloadFile.FullName);
context.Response.Flush();
...全文
153 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
不知道你是如何“打开”的。 你的 image/gjpeg 写错了。 实际上什么消息头都不添加,在手机端也应该可以打开图片。关键是从你的问题中看不出你是如何打开的。
sinat_33410993 2015-12-18
  • 打赏
  • 举报
回复
引用 4 楼 myhope88 的回复:
是不是文件名含中文了,或者文件名太长了?
跟文件名没有关系的
sinat_33410993 2015-12-18
  • 打赏
  • 举报
回复
引用 3 楼 sp1234 的回复:
不知道你是如何“打开”的。 你的 image/gjpeg 写错了。 实际上什么消息头都不添加,在手机端也应该可以打开图片。关键是从你的问题中看不出你是如何打开的。
我试了很多方法都不行, image/gjpeg 是我多次测试用的。 打开方法就是下载完之后在手机顶部会提示下载完成,滑出信息,直接点 下载记录 来打开,提示让选择打开方式。 在文件管理里面可以看到图片的缩略图,修改一下文件名子,就可以打开了,例如:a.jpg修改为ab.jpg就可以打开。
myhope88 2015-12-18
  • 打赏
  • 举报
回复
是不是文件名含中文了,或者文件名太长了?
sinat_33410993 2015-12-17
  • 打赏
  • 举报
回复
引用 1 楼 From_TaiWan 的回复:
下列代码,给一个文件夹下所有文件改名,供你参考
int i = 1;
string oldstr = DateTime.Now.ToString("yyyyMMddhhmm");
DirectoryInfo myDir = new DirectoryInfo("RecordedFiles");
foreach (FileInfo fi in myDir.GetFiles())
{
    fi.MoveTo("RecordedFiles\\" + oldstr + (i++).ToString() + "_.flv");

}

你可能理解错我的意思了。 我上面的代码是asp.net常用的图片下载代码,在电脑端的时候,下载的图片没有问题可以被识别为图片,但在手机上的时候,虽然也能下载图片,但就是不能被作为图片打开。因此我在想不是不在手机端需要输出更多的头部信息?
秋的红果实 2015-12-17
  • 打赏
  • 举报
回复
下列代码,给一个文件夹下所有文件改名,供你参考
int i = 1;
string oldstr = DateTime.Now.ToString("yyyyMMddhhmm");
DirectoryInfo myDir = new DirectoryInfo("RecordedFiles");
foreach (FileInfo fi in myDir.GetFiles())
{
    fi.MoveTo("RecordedFiles\\" + oldstr + (i++).ToString() + "_.flv");

}

62,046

社区成员

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

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

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

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