0

我们如何在 C# 响应对象中编写一个空白文件?

我想写一个路径根本不存在的文件。

System.Web.HttpContext.Current.Response.WriteFile("blank.txt")

我该怎么做?

4

3 回答 3

2

查看为非空文件发送了哪些标头,然后自己简单地写出相同的标头(当然,更改内容长度)但没有数据。

(我假设WriteFile 确实会在文件名等周围填写一些标题。如果没有,那就更简单了:)

于 2012-07-24T06:29:14.447 回答
1

你不能。您可以做的是,创建一个空文件并将其命名为“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

于 2012-07-24T06:22:45.120 回答
0

你可以这样做。

        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();
于 2012-07-24T07:33:22.817 回答