Windows8.1でThunderbird31.4.0を利用しています。
メールにcsvファイルを添付した場合のMIMEの扱いについて伺います。
Thunderbirdでメールを作成するときに、csvファイルを添付すると、
Content-Type: application/vnd.ms-excel;
となります。
確かにMicrosoft Office2013インストール済の環境ではありますが…
csvは本来、MIMEタイプが「text/csv」であり、添付ファイルの際も「text/csv」や「text/comma-separated-values」となるそうです。
MIMEタイプ一覧RFC 4180Bugzillaの
759066; Thunderbird sends CSV attachments as application/vnd.ms-excelと同じ現象だと思います。
Thunderbird側で正しくMIMEの指定ができていない状態に見えます。
調べてみると、Microsoft Excelが入っていない環境(Ubuntu12.04/Thunderbird31.4.0で検証) では、正しく
Content-Type: text/csv
となっていたので、Excelが入っている環境だとThunderbirdが勝手に
Content-Type: application/vnd.ms-excel;
としてしまうのではないかと思いました。
MIME editでcsvに対して「text/comma-separated-values」を指定しても反映されません。
新規プロファイルでも再現します。
当初オフラインで起動し、プロファイルフォルダ内のmimeTypes.rdfを探したのですが、mimeTypes.rdfはメールの受信と添付ファイルの保存を行わないと作成されないようで、これが作成される前(受信操作を行う前)にcsvファイルを添付したテストメールを作成、下書きに保存した状態でも、以下のようにapplication/vnd.ms-excelとなってしまいます。
コード:
Content-Type: application/vnd.ms-excel;
name="test.csv"
Content-Transfer-Encoding: base64
Content-Disposition: attachment;
filename="test.csv"
一度csvファイルを受信し、(Excelでは開かずに)「ファイルを保存する」を選んだあとのmimeTypes.rdfは以下の通りで、Excelを選んでいないにもかかわらず、application/vnd.ms-excelに関連付けられてしまっています。
コード:
<?xml version="1.0"?>
<RDF:RDF xmlns:NC="http://home.netscape.com/NC-rdf#"
xmlns:RDF="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<RDF:Seq RDF:about="urn:mimetypes:root">
<RDF:li RDF:resource="urn:mimetype:application/vnd.ms-excel"/>
</RDF:Seq>
<RDF:Description RDF:about="urn:mimetypes">
<NC:MIME-types RDF:resource="urn:mimetypes:root"/>
</RDF:Description>
<RDF:Description RDF:about="urn:root"
NC:ja_defaultHandlersVersion="-1" />
<RDF:Seq RDF:about="urn:schemes:root">
</RDF:Seq>
<RDF:Description RDF:about="urn:mimetype:application/vnd.ms-excel"
NC:value="application/vnd.ms-excel"
NC:editable="true"
NC:description="Microsoft Excel 97-2003 Worksheet">
<NC:fileExtensions>csv</NC:fileExtensions>
<NC:fileExtensions>xls</NC:fileExtensions>
<NC:handlerProp RDF:resource="urn:mimetype:handler:application/vnd.ms-excel"/>
</RDF:Description>
<RDF:Description RDF:about="urn:schemes">
<NC:Protocol-Schemes RDF:resource="urn:schemes:root"/>
</RDF:Description>
<RDF:Description RDF:about="urn:mimetype:handler:application/vnd.ms-excel"
NC:alwaysAsk="true"
NC:saveToDisk="true">
<NC:externalApplication RDF:resource="urn:mimetype:externalApplication:application/vnd.ms-excel"/>
</RDF:Description>
</RDF:RDF>
Excelインストール済環境では正しいMIMEの指定はできないのでしょうか?