我今天遇到了一个问题,这对我来说很奇怪,但也许对 C# 领域的专家来说不是。
我有一个Download
这样的函数(一段代码!)
public void Download (string path){
HttpContext.Current.Response.ContentType = "application/octet-stream";
try {
....//process a 'filePath' variable using the 'path' parameter
using ( FileStream sourceFile = new FileStream( filePath, FileMode.Open ) ) {
...
HttpContext.Current.Response.AddHeader( "Content-Disposition", "attachment; filename=" + Path.GetFileName( filePath ) );
HttpContext.Current.Response.AddHeader( "Content-Length", fileSize.ToString() );
HttpContext.Current.Response.BinaryWrite( getContent );
}
...
}
如果提到并存储在path
/filePath
变量中的文件名包含空格
PR SimpleTest.xls
然后下载框包含文件名PR
,没有任何附加内容。
如果该文件名没有空格(如PR_SimpleTest.xls
),则带有标题PR_SimpleTest.xls
,我可以这样下载(显示带有他的扩展名的完整文件名)。
如果文件名包含空格,是否有解决方案来解决问题?