我有一个指向CSV文件的链接。单击时,它将在浏览器中打开该文件。我想使用不同的应用程序(即Excel,Open Office,Lotus)将该文件作为电子表格打开。是否可以包含标题或其他内容来实现这一目标?感谢
链接:
<a target="_blank" href="contacts.csv">Contacts</a>
浏览器显示:
First Name,Last Name,Title,Email,Company,Address,City,State,Zipcode,Direct Phone,Mobile Phone,Direct Fax,Company Phone,Company Fax
John,Doe,Estimator,johnd@acme.com,Acme Co.,112 Main St,Gothem,IL,,(847) 555-1122,,,,
Jane,Doe,Engineer,,Ace Industries,,Seattle,WA,,,,,(206) 555-1234,
答案 0 :(得分:2)
您需要在生成csv文件的任何内容上设置内容类型标头。
请参阅:Setting mime type for excel document
可用标头。
您没有说明您使用哪种语言来生成csv数据,或者它是否只是您要链接的平面文件。虽然大多数语言都提供了动态设置标头的方法,但如果您使用的是静态平面文件,则可能需要设置htaccess(假设apache是您的Web服务器)。这里有针对该案例的说明:http://htaccess.wordpress.com/2008/07/16/sending-correct-content-type-headers-with-htaccess/
答案 1 :(得分:1)
@stakolee链接的答案实际上更具体到在Excel中打开文件。如果您想要正确且广泛兼容,则mime类型应为CSV,而不是Excel。
正确的mime类型为text/csv
。 Excel可能是与此类型相关联的应用程序,因此您将获得所需的行为。
What MIME type should I use for CSV?
你也可以设置Content-Disposition
以帮助解决问题。
Content-Disposition: attachment; filename="filename.csv"
What to set as mimetype for csv files to open in spreadsheet applications
如果需要备份选项,可以设置多种mime类型。
text/csv, application/csv, application/excel, application/vnd.ms-excel, application/vnd.msexcel
Filepicker does not accept mimetype 'text/csv' on windows
RFC 4180表示您可以使用text/csv; header=present
或header=absent
进行回复,以指明文件是否包含列标题。
Proper syntax for optional header parameter for text/csv mimetype?