0

コードビハインドでダウンロードした後、Word文書を開くためのコードを書きました。ドキュメントは正常に開いていますが、Word形式で保存されていません。それを開くとき、ファイルを開くためのフォーマットを選択するように求められます。

コードは以下のとおりです。

string FullFilePath = "D:\\ASP\\ASP.doc";
FileInfo file = new FileInfo(FullFilePath);

if (file.Exists)
{
    Response.ContentType = "application/vnd.ms-word";
    Response.AddHeader("Content-Disposition", "inline; filename=\"" + txtDate.Text  + "\"");
    Response.AddHeader("Content-Length", file.Length.ToString());
    Response.TransmitFile(file.FullName);
}
4

1 に答える 1

2

コンテンツ タイプを に設定しますapplication/msword

参照: Microsoft Office MIME タイプ

ファイル名を送信するときに拡張子を指定していません。
ファイルが拡張子なしで保存されている場合は、ファイルを開くために使用するアプリケーションを尋ねるプロンプトが表示されます。

また、"Content-Disposition", "Attachment"ブラウザにファイルを保存するように指示する場合は、 を使用します。inlineブラウザは Word でファイルを直接開こうとします。

string FullFilePath =//path of file //"D:\\ASP\\ASP.doc";
FileInfo file = new FileInfo(FullFilePath);
if (file.Exists)
{
  Response.ContentType = "application/msword";
  Response.AddHeader("Content-Disposition", "Attachment; filename=\"" + txtDate.Text  + ".doc\"");
  Response.AddHeader("Content-Length", file.Length.ToString());
  Response.TransmitFile(file.FullName);
}
于 2013-02-06T08:47:54.580 に答える