iPhoneの標準メーラーで添付ファイル名が文字化けした。
=?utf-8?Q?....
今までと同じ方法でファイルを添付して送っていたのに、なぜか表示されない。そこで、表示できるときとできないときの違いを知りたくて、メールのソースを表示してみた。
すると
■ 表示できる方
filename="=?utf-8?B?..."
■ 表示できない方
filename="=?utf-8?Q?..."
できる方はBase64、できない方はQuoted-Printableだった。
おいおい、なんで違うんだよって思って、copilotに聞いてみた。
Q. Outlook2019を使っています。ファイル名に日本語を含む添付ファイルを送るとき、ファイル名がBase64エンコードされるときと、Quoted-Printableでエンコードされるときがあります。Base64エンコードで固定したいのですが、どうすればいいですか?
A. 結論から言うと、Outlook 2019 では添付ファイル名のエンコード方式(Base64 / Quoted‑Printable)をユーザー側で固定する設定は存在しません。これは仕様であり、Outlook が内部ロジックに基づいて自動的に選択しているためです。ただし、どのような条件で Base64 / Quoted‑Printable が選ばれるのか、そして Base64 に“寄せる”ために現実的にできる対策があります。
まじかよ。仕様かよ。
Base64に「寄せるため」には、日本語を多めにしろだって。