概要 | パッケージ | クラス | 階層ツリー | 非推奨 API | 索引 | ヘルプ
openGion 5.3.1.0
前のクラス 次のクラス | フレームあり フレームなし
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド

## org.opengion.fukurou.mail
インタフェース MailCharset

既知の実装クラスの一覧:
  Mail_ISO2022JP_Charset, Mail_Windows31J_Charset

    public interface MailCharset

MailCharset は、E-Mail 送信時のエンコードに応じた処理を行う為の、 インターフェースです。 E-Mail で日本語を送信する場合、ISO-2022-JP （JISコード)化して、7bit で エンコードして送信する必要がありますが、Windows系の特殊文字や、unicodeと 文字のマッピングが異なる文字などが、文字化けします。 対応方法としては、 『１．Windows-31J + 8bit 送信』 『２．ISO-2022-JP に独自変換 + 7bit 送信』 の方法があります。 今回、この２つの方法について、それぞれサブクラス化を行い、処理できるように したのが、このインターフェース、および、サブクラスです。 『１．Windows-31J + 8bit 送信』の方法は、通常の JavaMail API に準拠して 処理を行う、Mail_Windows31J_Charset サブクラスで実装しています。 古いメイラーおよび、古いメールサーバーではメール転送できない為、 この方式は、社内で使用する場合のみに、利用できますが、主としてWindows系の 社内システムにおいては、こちらの方が、なにかとトラブルは少ないと思います。 『２．ISO-2022-JP に独自変換 + 7bit 送信』の実装は、 JAVA PRESS Vol.37 (http://www.gihyo.co.jp/magazines/javapress)の 【特集1】 決定版！ サーバサイドJavaの日本語処理 第3章：JavaMailの日本語処理プログラミング……木下信 “マルチプラットフォーム”な日本語メール送信術 完全解説 でのサンプルアプリケーション http://www.gihyo.co.jp/book/2004/225371/download/toku1_3.zip を、使用して、Mail_ISO2022JP_Charset サブクラスで実装しています。 これらのサブクラスは、MailCharsetFactory ファクトリクラスより、作成されます。 その場合、引数のキャラクタセット名は、Windows-31J 、MS932 か、それ以外となっています。 それ以外が指定された場合は、ISO-2022-JP を使用します。

バージョン
  4.0
作成者
  Kazuhiko Hasegawa
導入されたバージョン:
  JDK5.0,

メソッドの概要
`java.lang.String` | `encodeWord(java.lang.String text)` 日本語を含むヘッダ用テキストを生成します。
`javax.mail.internet.InternetAddress` | `getAddress(java.lang.String address, java.lang.String personal)` 日本語を含むアドレスを生成します。
`java.lang.String` | `getBit()` Content-Transfer-Encoding を指定する場合の ビット数を返します。
`void` | `setTextContent(javax.mail.internet.MimeMessage mimeMsg, java.lang.String text)` テキストをセットします。

メソッドの詳細

### setTextContent

    void setTextContent(javax.mail.internet.MimeMessage mimeMsg,
                        java.lang.String text)

  テキストをセットします。 Part#setText() の代わりにこちらを使うようにします。

  パラメータ:
    `mimeMsg` - MimeMessage
    `text` - String 設定するテキスト
  例外:
    `RuntimeException(MessagingException)`

### encodeWord

    java.lang.String encodeWord(java.lang.String text)

  日本語を含むヘッダ用テキストを生成します。 変換結果は ASCII なので、これをそのまま setSubject や InternetAddress のパラメタとして使用してください。

  パラメータ:
    `text` - String 設定するテキスト
  戻り値:
    String 日本語を含むヘッダ用テキスト
  例外:
    `RuntimeException(UnsupportedEncodingException)`

### getAddress

    javax.mail.internet.InternetAddress getAddress(java.lang.String address,
                                                   java.lang.String personal)

  日本語を含むアドレスを生成します。 personal に、日本語が含まれると想定しています。 サブクラスで、日本語処理を行う場合の方法は、それぞれ異なります。

  パラメータ:
    `address` - String アドレス部分
    `personal` - String 日本語の説明部分
  戻り値:
    InternetAddress 日本語を含むアドレス
  例外:
    `RuntimeException(UnsupportedEncodingException)`

### getBit

    java.lang.String getBit()

  Content-Transfer-Encoding を指定する場合の ビット数を返します。 Windows系は、8bit / ISO-2022-JP 系は、7bit になります。

  戻り値:
    String ビット数

概要 | パッケージ | クラス | 階層ツリー | 非推奨 API | 索引 | ヘルプ
| openGion 5.3.1.0
前のクラス 次のクラス | フレームあり フレームなし
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド

Webアプリケーションフレームワーク openGion
Copyright (c) 2009 The openGion Project.