我们如何在 C# 响应对象中编写一个空白文件?
我想写一个路径根本不存在的文件。
System.Web.HttpContext.Current.Response.WriteFile("blank.txt")
我该怎么做?
查看为非空文件发送了哪些标头,然后自己简单地写出相同的标头(当然,更改内容长度)但没有数据。
(我假设WriteFile
确实会在文件名等周围填写一些标题。如果没有,那就更简单了:)
你不能。您可以做的是,创建一个空文件并将其命名为“blank.txt”并将其保存在您的解决方案中。
我能知道写空白文件的原因吗?这不等于不写任何回应吗?
更新
基于 Jon 的想法,您甚至可以简单地编写 HTTP 标头
Response.ContentType = "text/plain";
Response.AppendHeader("Content-Disposition", "attachment;filename= errorLog.txt");
Response.AddHeader("content-length","0");
Response.Flush();
Response.End();
更新 2
如果已经有errorLog.txt文件,直接使用Response.WriteFile
你可以这样做。
byte[] buffer = new byte[1];
Response.Clear();
Response.ContentType = "text/plain";
Response.OutputStream.Write(buffer, 0, buffer.Length);
Response.AddHeader("Content-Disposition", "attachment;filename=blank.txt");
Response.End();