

高岡智則
年齢:33歳 性別:男性 職業:Webディレクター(兼ライティング・SNS運用担当) 居住地:東京都杉並区・永福町の1LDKマンション 出身地:神奈川県川崎市 身長:176cm 体系:細身〜普通(最近ちょっとお腹が気になる) 血液型:A型 誕生日:1992年11月20日 最終学歴:明治大学・情報コミュニケーション学部卒 通勤:京王井の頭線で渋谷まで(通勤20分) 家族構成:一人暮らし、実家には両親と2歳下の妹 恋愛事情:独身。彼女は2年いない(本人は「忙しいだけ」と言い張る)
rfc2047とは
rfc2047はメールのヘッダ部分で使われる非ASCII文字を安全に表現するための規格です。正式名称は RFC 2047 で、MIME の一部として広く使われています。メールは英数字中心の時代にスタートしましたが、日本語や中国語などの文字を含む件名や送信者名を正しく表示するためにこの規格が活躍します。
この仕組みのおかげで、受信側のメールクライアントは「日本語の件名」「長い名前」「多言語の表示」などを正しくデコードして表示することができます。もし rfc2047 が使われていなかったり誤って使われていると、文字化けが発生して読めない文字列になってしまいます。だから私たちがメールを正しく読むためにはこのルールを知っておくと役立ちます。
encoded-word の仕組み
rfc2047 が定めるのはencoded-wordと呼ばれる形式です。encoded-word は以下の形で書かれます。
=? charset ? encoding ? encoded-text ?= ここで charset は文字コード、encoding は文字列の表現方法、encoded-text は実際のデータを指します。よく使われる encoding は Base64(B)とクイック表現の Q です。
具体例
例として、=?UTF-8?B?5pel5pys6Kqe?= という encoded-word は日本語の文字列を Base64 で表したものです。実際にはこの encoded-word をメールクライアントが解読して、日本語の文字列として表示します。
使われる場面と利点
主に件名(Subject)や送信者名(From)など、ヘッダ部分で非ASCII文字を表示する場面に使われます。複数の encoded-word を連結して一つの文字列として扱われることもあり、長い名前や複数語の名前でも安全に伝えることができます。
注意点と実践のコツ
・メールクライアントは通常自動でデコードしますので、特別な操作をしなくても表示されることが多いです。
・もし文字化けを見つけたら、受信設定の文字コードを UTF-8 に統一する、または自動デコード機能を有効にするなどの方法で対処します。
・複数の encoded-word が続く場合、空白や改行で区切られていても連結して表示されることが一般的です。これにより長い名前でも切れずに表示されます。
encoded-word の構成要素を表で見る
| 項目 | 説明 |
|---|---|
| charset | 文字コードの指定。例: UTF-8 |
| encoding | エンコード方式。例: B は Base64、Q はクイック表現 |
| encoded-text | 実際のデータ。Base64 などでエンコードされた文字列 |
初心者向けのまとめ
rfc2047 は、国際化されたメールを正しく扱うための基本的な規格です。件名や送信者名が英数字だけでなく日本語や他の言語でも美しく表示されるよう、encoded-word という仕組みで文字を置換して伝えます。日常のメールで文字化けに遭遇したときは、 encoded-word が使われているかを疑い、UTF-8 と Base64 の組み合わせを想定してデコードしてみると解決につながることがあります。
よくある質問
Q: すべてのメールで rfc2047 が使われていますか?
A: いいえ。英数字だけの件名や短い名前は ASCII のままの場合もあります。
Q: どんな言語でも大丈夫ですか?
A: 基本的には UTF-8 などの広く使われる文字コードを使うと対応範囲が広がります。
rfc2047の同意語
- RFC 2047
- MIME ヘッダのエンコード方式を定義した RFC の正式名称。メールヘッダで非 ASCII 文字を表現するための規格です。
- RFC2047
- RFC 2047 の別表記。RFC 番号の表記揺れの一つで、同じ規格を指します。
- Encoded-word
- RFC2047 で規定される、=?charset?encoding?encoded-text?= という形式のエンコード語。メールヘッダ内の単語レベルで文字を表現する仕組みです。
- MIME encoded-word
- MIME 規格に基づく encoded-word の呼び方。RFC2047 により定義された形式を指します。
- MIME word
- MIME encoded-word の別称として使われる表現。日常的にはこの語で呼ばれることがあります。
- Encoded Word
- Encoded-word の別表記(英語表記バリエーションとして使われることがあります)。
- メールヘッダ用エンコード語
- メールのヘッダ部分で使用されるエンコード語の総称。RFC2047 の代表的な利用対象です。
- RFC2047 encoded-word
- RFC2047 に準拠したエンコード語の表現を指す言い回し。
rfc2047の対義語・反対語
- プレーンテキスト
- ヘッダ内の非ASCII文字を使わず、エンコードせずそのまま表示する運用。RFC2047の encoded-word を使わない対義語のイメージ。
- ASCIIのみ
- ヘッダ・本文で使用する文字を ASCII の範囲に限定する運用。非 ASCII を避ける意味で RFC2047 の対極。
- 未エンコード
- encoded-word を使用せず、文字をそのまま記述する状態。
- 直接表記
- 非 ASCII も含む文字をエンコードせず、直接表記する方法。
- Unicode直接記述
- UTF-8 などの Unicode 文字をヘッダに直接書く表現。
- エンコード不要
- RFC2047 のエンコード処理を行わない前提の運用。
- エンコード回避
- encoded-word の使用を避ける考え方・実践。
- 直書き表現
- ヘッダの文言を直接的に書く表現形式。
- ASCII最適化表現
- 全てを ASCII に落として表現することで国際化を回避する形。
- ヘッダ値の直書き
- ヘッダ値を直書きする運用。非ASCIIをエンコードせず表現するイメージ。
rfc2047の共起語
- MIME
- Multipurpose Internet Mail Extensions。電子メールの拡張規格で、メールの本文とヘッダの表現方法を定めています。RFC2047はこのMIME規格のEncoded-Word機能を使い、ヘッダ内の非ASCII文字を表現します。
- Encoded-Word
- ヘッダ内で非ASCII文字を表現するための形式。=?charset?encoding?encoded-text?= の形で書かれ、非ASCII文字をASCIIだけのヘッダに含められるようにします。
- 文字セット
- 文字を表す集合(例: UTF-8、ISO-2022-JP など)。Encoded-Wordではこの charset が先頭に指定され、どの文字をどうエンコードするかを決めます。
- Base64
- Base64は64文字を使うエンコード方式のひとつ。RFC2047のEncoded-Wordでエンコードに用いられる「B」エンコードに対応します。
- Qエンコード
- Qエンコードはスペースをアンダースコアで表すなど、非ASCII文字をASCIIに近い形で表現するエンコード方式。RFC2047のEncoded-Wordで使われることがあります。
- 件名ヘッダ
- 件名を表すヘッダ(Subject)。非ASCII文字はEncoded-Wordとして表現されることが多いです。
- Fromヘッダ
- 差出人情報を含むヘッダ(From)。非ASCII文字が含まれる場合にEncoded-Wordが使われることがあります。
- Toヘッダ
- 宛先情報を含むヘッダ(To)。非ASCII文字がある場合、Encoded-Wordで表現されます。
- Ccヘッダ
- カーボンコピーの宛先を表すヘッダ(Cc)。非ASCII文字を含む場合はEncoded-Wordで表現されます。
- メールヘッダ
- メールのヘッダ全体の領域。Subject や From などの各ヘッダでEncoded-Wordが使われます。
- 非ASCII文字
- ASCII以外の文字。RFC2047はこの非ASCII文字をヘッダ内で安全に扱えるようにします。
- UTF-8
- Unicodeの可変長文字セットの一つ。現在もっとも広く使われる文字セットで、Encoded-Wordのcharsetとして使われることが多いです。
- ISO-2022-JP
- 日本語を表現する古典的な文字コード。日本語メールのヘッダでEncoded-Wordと組み合わせて使われることがあります。
- メールクライアント
- GmailやOutlookなどのメールを読む・送るアプリケーション。RFC2047に対応していれば非ASCII件名の表示が正しく行われます。
rfc2047の関連用語
- RFC 2047
- メールヘッダ内で非ASCII文字を安全に表現するための規格。Subject や From などのヘッダで =?charset?encoding?encoded-text?= という形の encoded-word を使います。
- encoded-word
- 非ASCII文字をヘッダで伝えるための表現形式。形式は =?charset?encoding?encoded-text?= の形で、B(Base64)または Q(Quoted-Printable風) のエンコーディングを用います。
- charset
- encoded-word 内で指定される文字集合。UTF-8 や ISO-2022 など、対象文字のエンコードを表します。
- encoding
- encoded-word 内で使われるエンコーディングの種類。B は Base64、Q はヘッダ向けのクオートプリント風表現です。
- Base64 (B)
- Base64。データを ASCII 文字だけで表現するエンコーディング。encoded-word の代表的なエンコーディングです。
- Q-encoding (Q)
- Qエンコーディング。スペースをアンダースコア '_' などで表現するなど、ヘッダ向けに最適化されたエンコーディングです。
- Subject
- メールの件名を表すヘッダ。非ASCIIを含む場合 RFC 2047 でエンコードされることがあります。
- From
- 差出人情報を含むヘッダ。表示名に非ASCIIが含まれる場合 encoded-word で表現されます。
- To
- 宛先情報を含むヘッダ。複数の表示名がある場合も encoded-word を使うことがあります。
- MIME
- メール本文とヘッダの多目的伝送を扱う総合規格。RFC 2045/2046/2047 などを含みます。
- RFC 2045
- MIME Part 1。メディアタイプや境界、添付などの定義。
- RFC 2046
- MIME Part 2。データのタイプ(Content-Type)とパラメータ、エンコーディングの定義。
- Non-ASCII in headers
- ヘッダに非ASCII文字を含める必要がある場合、RFC 2047 が解決策を提供します。
- Header folding
- 長いヘッダを改行して折り返す規則。複数の encoded-word を連結して使うのが一般的です。
- Length limit (75 octets)
- encoded-word 一語の長さは最大 75 オクテット。超える場合は複数の encoded-word に分割して記述します。
- 7bit / 8bit
- 7bit は ASCII のみ、8bit は拡張文字を含む。ヘッダの非ASCIIを扱う際には encoded-word の使用が前提となることが多いです。
- UTF-8
- Unicode を表す最も一般的なエンコーディング。encoded-word の charset としてよく使われます。
- ISO-2022
- 日本語などに使われる古い文字セット。encoded-word の charset として使われることがありますが、現在は UTF-8 が主流です。
- ASCII
- 英数字と基本記号のみを含む 7-bit の文字集合。RFC 2047 の前提として ASCII の安全な転送が重要です。



















