FileInfo DownloadFile = new FileInfo(FullFileName);
Response.Clear();
Response.ClearHeaders();
Response.Buffer=false;
Response.ContentType="application/octet-stream";
Response.AppendHeader("Content-Disposition","attachment;filename=" +HttpUtility.UrlEncode(DownloadFile.Name,System.Text.Encoding.UTF8));
Response.AppendHeader("Content-Length",DownloadFile.Length.ToString());
Response.WriteFile(DownloadFile.FullName);
Response.Flush();
Response.End();
Response.Clear();
Response.ClearHeaders();
Response.Buffer=false;
Response.ContentType="application/octet-stream";
Response.AppendHeader("Content-Disposition","attachment;filename=" +HttpUtility.UrlEncode(DownloadFile.Name,System.Text.Encoding.UTF8));
Response.AppendHeader("Content-Length",DownloadFile.Length.ToString());
Response.WriteFile(DownloadFile.FullName);
Response.Flush();
Response.End();
但关键不是在于存放在那里的问题!而是长中文名上传是没有问题的,但下载的话就会出现乱码!!!!!!!好想ASP可以解决的!帮手顶!!
一如下:
Response.Clear()
Response.AddHeader("Content-Disposition", "attachment; filename=" + File.Name)
Response.AddHeader("Content-Length", File.Length.ToString())
Response.ContentType = "application/octet-stream"
Response.WriteFile(File.FullName)
Response.End() 二,修改服务器的注册表让它支持中文
能下载下来的文件,文件名是奇数个汉字,不能下载的是偶数个汉字IIS5不支持中文文件名的解决办法修改服务器注册表
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\InetInfo\Parameters]
"FavorDBCS"=dword:00000001将“FavorDBCS”的值改为“0”
回复人: killserver(killserver) ( ) 信誉:94 2005-08-10 19:43:00 得分: 0
我也遇到过这个问题,最后,我substring(16)
——————————————————————————————————————————————
你这样的话,更不行,连后缀都没有了。
我有想过,如果长度超过了16个字符,那么就截14个字,然后再加上“”或者“___”之后再加上后缀名。
不过还是没得选择的方法!!!!我相信很多人遇过,一定会有解决方法的!我再顶!!!!
不会的也帮手顶!!!!!!!!!
会的指教指教!!或者给点别的意见!!!!