Asp.net 使用“打开/保存”对话框将字符串保存到客户端
我使用以下代码将转换为字节数组的字符串内容写入ASP.NET/C中的客户端Asp.net 使用“打开/保存”对话框将字符串保存到客户端,asp.net,client,stream,types,mime,Asp.net,Client,Stream,Types,Mime,我使用以下代码将转换为字节数组的字符串内容写入ASP.NET/C中的客户端 byte[] data = StrToByteArray(strData); Response.ClearContent(); Response.AppendHeader("content-length", data.Length.ToString()); Response.ContentType = "text/plain"; Response.AppendHeader("content-Disposition", "
byte[] data = StrToByteArray(strData);
Response.ClearContent();
Response.AppendHeader("content-length", data.Length.ToString());
Response.ContentType = "text/plain";
Response.AppendHeader("content-Disposition", "attachment;filename=" + fileName);
Response.BinaryWrite(data);
Response.Flush();
fileName是以文件扩展名.pgn结尾的文件名。但是,该文件保存为.txt文件,忽略了我给它的扩展名。这是否与响应有关。Contenttype=text/plain?如何使“打开/保存”对话框显示并保存正确的.pgn文件名
此外,如果文件名是由破折号或空格分隔的字符串,则当打开/保存对话框时,文件名不会全部显示,但在遇到第一个破折号或空格或逗号时,文件名会被截断。如何补救
是的,它正在保存.txt,因为您的内容类型是MIME类型。使用image/png
删除破折号和空格怎么样?字符串。替换是伟大的。fileName.Replace-;等等
您好,谢谢,我使用了替换,但该文件确实是一个文本文件,但扩展名为pGn而不是png。在IE中它保存正确,但在Firefox中它保存为.png.txtI最终解决了这个问题。如果我想使用不同的扩展名,我必须使用application/octetstream作为ContentType。