280
A
回答
418
使用text/csv
是最合適的類型。
您還應該考慮在響應中添加Content-Disposition
標頭。通常,文本/ csv將由Internet Explorer直接加載到Excel的託管實例中。這可能會或可能不會是一個理想的結果。
Response.AddHeader("Content-Disposition", "attachment;filename=myfilename.csv");
以上將導致文件「另存爲」對話框出現,這可能是你想要的。
45
23
嘗試這些其他的mime類型之一(從這裏:http://filext.com/file-extension/CSV)
- 文本/逗號分隔值
- 文本/ CSV
- 應用/ CSV
- 應用/ EXCEL
- application/vnd.ms-excel
- application/vnd.msexcel
而且,MIME類型可能區分大小寫...
116
CSV的MIME類型爲text/csv根據RFC 4180。
2
設置內容類型和內容的配置如上述那樣產生似地不同的結果不同的瀏覽器:
IE8:另存爲如所期望對話框和Excel作爲默認的應用程序。 100%好。
Firefox:SaveAs對話框顯示出來,但Firefox並不知道它是一個電子表格。建議用Visual Studio打開它! 50%不錯
Chrome:提示完全被忽略。 CSV數據顯示在瀏覽器中。 0%好。
當然,在所有這些情況下,我指的是瀏覽器,因爲它們是從它們出來的,沒有定製MIME /應用程序映射。
15
只是用這樣
Response.Clear();
Response.ContentType = "application/CSV";
Response.AddHeader("content-disposition", "attachment; filename=\"" + filename + ".csv\"");
Response.Write(t.ToString());
Response.End();
46
多年來我一直在磨鍊這個完美的套頭,在我所知道的
// these headers avoid IE problems when using https:
// see http://support.microsoft.com/kb/812935
header("Cache-Control: must-revalidate");
header("Pragma: must-revalidate");
header("Content-type: application/vnd.ms-excel");
header("Content-disposition: attachment; filename=$filename.csv");
2
所有的瀏覽器,我建議工作出色在'myfilename前面插入'/'字符。cvs'
Response.AddHeader("Content-Disposition", "attachment;filename=/myfilename.csv");
我希望你能得到更好的結果。
2
我發現IE的問題在於它嗅探返回的數據並且自行決定它認爲發送了哪些內容類型。這會導致一些副作用,例如始終打開文本文件的saveAs對話框,因爲您正在使用數據trasnferes的壓縮。解決的方法是(在php代碼)......
header('X-Content-Type-Options: nosniff');
5
在ASP.net MVC,你可以使用一個FileContentResult
和File
方法:
public FileContentResult DownloadManifest() {
byte[] csvData = getCsvData();
return File(csvData, "text/csv", "filename.csv");
}
相關問題
- 1. 回覆內容類型
- 2. WSS 3.0:爲內容類型
- 3. 內容類型
- 4. 無法創建內容類型 - 找到重複的內容類型
- 5. XSD複雜類型混合內容的
- 6. XMLBeans的 - 複雜類型的集內容
- 7. 什麼內容類型強制下載文字回覆?
- 8. 內容類型json返回http 404
- 9. 根據內容類型返回xml/json
- 10. 在不同的內容類型中複製「字段內容」?
- 11. XML簡單類型,簡單內容,複雜類型,complexcontent
- 12. 用於CSV文件的Nginx中的重複內容類型標題
- 13. Cloudflare內容類型
- 14. Clojure內容類型?
- 15. CORS內容類型
- 16. 內容類型javax.mail.Part
- 17. Jboss沒有爲MSI返回任何內容類型
- 18. ContainerRequestFilter爲實體返回錯誤的內容類型
- 19. 什麼的內容腳本類型和內容樣式類型
- 20. Web APi Void,IIS express內容類型,IIS沒有內容類型
- 21. 獲取內容類型的子內容類型
- 22. 獲取內容類型中的其他內容類型值
- 23. CCK字段從內容類型中消失內容類型
- 24. WSGI - 將內容類型設置爲JSON
- 25. 果園內容類型爲空
- 26. 集內容類型爲UTF-8 angularjs $ HTTP
- 27. 內容類型爲BlackBerry OTA安裝
- 28. 動態字段爲Drupal內容類型
- 29. Carrierwave設置內容類型爲Octet-Stream
- 30. 跺腳內容類型報頭設置爲純對XML內容
Firefox 3.0.10似乎要求標題的值是相反的順序:attachment; filename = myfilename.csv – 2009-05-21 18:39:31
根據RFC#2183,首先是類型(附件),然後是參數(文件名等) – 2009-11-10 13:18:04
糾正了標頭值的排序。 – 2009-11-11 02:49:03