2

次のようなレポート名があるとします。

string reportName = "Facebook Network Performance Summary Report (By Region, By Content)";

そのファイル名をExcelとして表示したい

以下は、ファイルをエクスポートするための私のコードです

Response.AddHeader("Content-Disposition", "attachment; filename=" reportName + ".xls");
Response.AddHeader("Content-Length", l.ToString());
Response.ContentType = "application/vnd.ms-excel";
Response.BinaryWrite(f);

残念ながら、レポート名の最初のスペースを読むと、Facebook しか表示されず、それ以外は表示されません。

fileNAme のスペースを処理するための ASP.NET またはその他のメソッド用の既存の API はありますか?

4

5 に答える 5

6

ファイル名を二重引用符で囲んでみてください。

 string filename = reportName + ".xls";
 Response.AddHeader("Content-Disposition", "attachment; filename=\"" + filename + "\"");
于 2012-09-08T04:10:45.510 に答える
3

ファイル名を引用符で囲む必要があります。

Response.AddHeader("Content-Disposition", "attachment; filename=\"" + reportName + "\".xls");
于 2012-09-08T04:03:42.530 に答える
2

これに逐語的な文字列を使用するのはどうですか

string  reportName = @"Facebook Network Performance Summary Report (By Region, By Content)";
于 2012-09-08T04:04:35.543 に答える
1

二重引用符の前に@および/または二重二重引用符を追加して、C#がリテラルを読み取れるようにしてください

ファイルパスのスペースに関する問題 - C# でのコマンドライン実行

于 2012-09-08T04:04:10.247 に答える