Je dois envoyer un fichier CSV dans la réponse HTTP. Comment puis-je définir la réponse de sortie au format CSV?
Cela ne fonctionne pas:
Response.ContentType = "application/CSV";
Je dois envoyer un fichier CSV dans la réponse HTTP. Comment puis-je définir la réponse de sortie au format CSV?
Cela ne fonctionne pas:
Response.ContentType = "application/CSV";
L'utilisation de text/csv
est le type le plus approprié.
Vous devriez également envisager d'ajouter un en-tête Content-Disposition
à la réponse. Souvent, un text / csv sera chargé par Internet Explorer directement dans une instance hébergée d'Excel. Cela peut ou peut ne pas être un résultat souhaitable.
Response.AddHeader("Content-Disposition", "attachment;filename=myfilename.csv");
Ce qui précède entraînera l'apparition d'une boîte de dialogue "Enregistrer sous", qui correspond peut-être à vos attentes.
Au cours des années, j'ai perfectionné un ensemble parfait d'en-têtes pour cela qui fonctionne avec brio dans tous les navigateurs que je connais
// 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");
Essayez l'un de ces autres types mime (d'ici: http://filext.com/file-extension/CSV )
En outre, le type mime peut être sensible à la casse ...
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.