web-dev-qa-db-ja.com

スプレッドシートアプリケーションで開くCSVファイルのMIMEタイプとして設定するもの

私のアプリケーションでは、ユーザーは自分のデータをCSVファイルとしてダウンロードできます。これらはスプレッドシートアプリケーションで開くことになっています。 Linuxシステムでは、OpenOfficeを使用して正しく開くように求められますが、一部のユーザーは、ファイルをダウンロードするとExcelが自動的に開かないことを訴えますが、アプリケーションを選択するように求めます。他のサイトからCSVをダウンロードすると、Excelで正しく開きます。

私は設定しています:
mimetype:text/csv
content_disposition:添付; filename.csv

46
agiliq

これを試して:

Content-Type: text/csv; name="filename.csv"
Content-Disposition: attachment; filename="filename.csv"

Windowsブラウザーでは、ファイルがダウンロードされた後、MIMEタイプは無視され、ファイル名拡張子のみが対応するアプリケーションの決定に使用されます。

また、.CSVファイルをExcelで正しく開くことは困難です。これは、CSVが開かれているコンピューターの地域設定から既定の区切り文字が取得されるためです。さらに、エンコーディングはファイルの内容やMIMEタイプから決定されないため、非ASCII文字は動作しにくくなります。

64
Filip Navara