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();