Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/30.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net 使用“打开/保存”对话框将字符串保存到客户端_Asp.net_Client_Stream_Types_Mime - Fatal编程技术网

Asp.net 使用“打开/保存”对话框将字符串保存到客户端

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", "

我使用以下代码将转换为字节数组的字符串内容写入ASP.NET/C中的客户端

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。