パッケージ org.opengion.fukurou.mail

# クラス MailTX

java.lang.Object
org.opengion.fukurou.mail.MailTX

public class MailTX extends Object
MailTX は、SMTPプロトコルによるメール送信プログラムです。 E-Mail で日本語を送信する場合、ISO-2022-JP(JISコード)化して、7bit で エンコードして送信する必要がありますが、Windows系の特殊文字や、unicodeと 文字のマッピングが異なる文字などが、文字化けします。 対応方法としては、 １．Windows-31J + 8bit 送信 ２．ISO-2022-JP に独自変換 + 7bit 送信 の方法があります。 今回、この２つの方法について、対応いたしました。 ※ 6.3.8.0 (2015/09/11) useSSL属性=true に設定すると、protocolに、smtps を使用します。

導入されたバージョン:
  JDK5.0,

- ## フィールドの概要

  フィールド
  修飾子とタイプ
  フィールド
  説明
  `static final String`
  `MAILER`
  メーラーの名称 "openGion Mail Ver 6.0"

- ## コンストラクタの概要

  コンストラクタ
  コンストラクタ
  説明
  `MailTX(String host)`
  メールサーバーとデフォルト文字エンコーディングを指定して、オブジェクトを構築します。
  `MailTX(String host, String charset)`
  メールサーバーとデフォルト文字エンコーディングを指定して、オブジェクトを構築します。
  `MailTX(String host, String charset, String smtpPort, String authType, String authPort, String authUser, String authPass, boolean useStarttls, boolean useSSL)`
  メールサーバーと文字エンコーディングを指定して、オブジェクトを構築します。

- ## メソッドの概要

  修飾子とタイプ
  メソッド
  説明
  `void`
  `clearBcc()`
  送信先(BCC)アドレス配列をクリアします。
  `void`
  `clearCc()`
  送信先(CC)アドレス配列をクリアします。
  `void`
  `clearTo()`
  送信先(ＴＯ)アドレス配列をクリアします。
  `static void`
  `main(String[] args)`
  コマンドから実行できる、テスト用の main メソッドです。
  `void`
  `reset()`
  MimeMessageをリセットします。
  `void`
  `sendmail()`
  メールを送信します。
  `void`
  `setBcc(String... bcc)`
  送信先(ＢＣＣ)アドレス配列をセットします。
  `void`
  `setCc(String... cc)`
  送信先(ＣＣ)アドレス配列をセットします。
  `void`
  `setDebug(boolean debug)`
  デバッグ情報の表示を行うかどうかをセットします。
  `void`
  `setFilename(String... fname)`
  添付ファイル名配列をセットします。
  `void`
  `setFrom(String from)`
  送信元(ＦＲＯＭ)アドレスをセットします。
  `void`
  `setMessage(String msg)`
  メッセージ(本文)をセットします。
  `void`
  `setReplyTo(String... replyTo)`
  返信元(replyTo)アドレス配列をセットします。
  `void`
  `setSubject(String subject)`
  タイトルをセットします。
  `void`
  `setTo(String... to)`
  送信先(ＴＯ)アドレス配列をセットします。

  ### クラスから継承されたメソッド java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## フィールド詳細

  - ### MAILER

    public static final String MAILER
    メーラーの名称 "openGion Mail Ver 6.0"
    関連項目:
      - 定数フィールド値

- ## コンストラクタの詳細

  - ### MailTX

    public MailTX(String host)
    メールサーバーとデフォルト文字エンコーディングを指定して、オブジェクトを構築します。 デフォルト文字エンコーディングは、ISO-2022-JP です。
    パラメータ:
      `host` - メールサーバー
    例外:
      `IllegalArgumentException` - 引数が null の場合。

  - ### MailTX

    public MailTX(String host, String charset)
    メールサーバーとデフォルト文字エンコーディングを指定して、オブジェクトを構築します。 文字エンコーディングには、Windwos-31J , MS932 , UTF-8 , ISO-2022-JP を指定できます。
    パラメータ:
      `host` - メールサーバー
      `charset` - 文字エンコーディング
    例外:
      `IllegalArgumentException` - 引数が null の場合。
    変更履歴:
      5.4.3.2 (2012/01/06) 認証対応のため, 5.8.1.1 (2014/11/14) 認証ポート追加, 6.3.8.0 (2015/09/11) SSL接続するかどうかを指定するパラメータを追加します。

  - ### MailTX

    public MailTX(String host, String charset, String smtpPort, String authType, String authPort, String authUser, String authPass, boolean useStarttls, boolean useSSL)
    メールサーバーと文字エンコーディングを指定して、オブジェクトを構築します。 認証を行う場合は認証方法を指定します。 文字エンコーディングには、Windwos-31J , MS932 , ISO-2022-JP を指定できます。
    パラメータ:
      `host` - メールサーバー
      `charset` - 文字エンコーディング
      `smtpPort` - SMTPポート
      `authType` - 認証方法(POP_BEFORE_SMTP , SMTP_AUTH)
      `authPort` - 認証ポート
      `authUser` - 認証ユーザ
      `authPass` - 認証パスワード
      `useStarttls` - 暗号化通信設定（STARTTLS) 5.9.29.2
      `useSSL` - SSL接続するかどうか
    例外:
      `IllegalArgumentException` - 引数が null の場合。
    変更履歴:
      5.1.9.0 (2010/08/01) mail.smtp.localhostの設定追加, 5.4.3.2 (2012/01/06) 認証対応(POP Before SMTP)。引数３つ追加(将来的にはAuthentication対応？), 5.8.1.1 (2014/11/14) 認証ポート追加, 6.2.4.1 (2015/05/22) SMTP_AUTH 対応, 6.3.8.0 (2015/09/11) SSL接続するかどうかを指定するパラメータを追加します。, 5.9.29.2 (2018/02/16) STARTTLS対応(ｷｰﾜｰﾄﾞをVer5 にあわせます), 5.10.20.1 (2020/03/03) 添付ファイル名文字化け対策

- ## メソッドの詳細

  - ### sendmail

    public void sendmail()
    メールを送信します。

  - ### reset

    public void reset()
    MimeMessageをリセットします。 sendmail() でメールを送信後、セッションを閉じずに別のメールを送信する場合、 リセットしてから、各種パラメータを再設定してください。 その場合は、すべてのパラメータが初期化されていますので、もう一度 設定しなおす必要があります。

  - ### setFrom

    public void setFrom(String from)
    送信元(ＦＲＯＭ)アドレスをセットします。
    パラメータ:
      `from` - 送信元(ＦＲＯＭ)アドレス

  - ### setTo

    public void setTo(String... to)
    送信先(ＴＯ)アドレス配列をセットします。
    パラメータ:
      `to` - 送信先(ＴＯ)アドレス配列(可変長引数)

  - ### setCc

    public void setCc(String... cc)
    送信先(ＣＣ)アドレス配列をセットします。
    パラメータ:
      `cc` - 送信先(ＣＣ)アドレス配列(可変長引数)

  - ### setBcc

    public void setBcc(String... bcc)
    送信先(ＢＣＣ)アドレス配列をセットします。
    パラメータ:
      `bcc` - 送信先(ＢＣＣ)アドレス配列(可変長引数)

  - ### clearTo

    public void clearTo()
    送信先(ＴＯ)アドレス配列をクリアします。
    変更履歴:
      4.3.6.0 (2009/04/01) 新規追加

  - ### clearCc

    public void clearCc()
    送信先(CC)アドレス配列をクリアします。
    変更履歴:
      4.3.6.0 (2009/04/01) 新規追加

  - ### clearBcc

    public void clearBcc()
    送信先(BCC)アドレス配列をクリアします。
    変更履歴:
      4.3.6.0 (2009/04/01) 新規追加

  - ### setReplyTo

    public void setReplyTo(String... replyTo)
    返信元(replyTo)アドレス配列をセットします。
    パラメータ:
      `replyTo` - 返信元(replyTo)アドレス配列(可変長引数)

  - ### setSubject

    public void setSubject(String subject)
    タイトルをセットします。
    パラメータ:
      `subject` - タイトル

  - ### setFilename

    public void setFilename(String... fname)
    添付ファイル名配列をセットします。
    パラメータ:
      `fname` - 添付ファイル名配列(可変長引数)

  - ### setMessage

    public void setMessage(String msg)
    メッセージ(本文)をセットします。
    パラメータ:
      `msg` - メッセージ(本文)

  - ### setDebug

    public void setDebug(boolean debug)
    デバッグ情報の表示を行うかどうかをセットします。
    パラメータ:
      `debug` - 表示有無[true/false]

  - ### main

    public static void main(String[] args)
    コマンドから実行できる、テスト用の main メソッドです。 Usage: java org.opengion.fukurou.mail.MailTX <from> <to> <host> [<file> ....] で、複数の添付ファイルを送付することができます。
    パラメータ:
      `args` - コマンド引数配列
    変更履歴:
      6.3.6.0 (2015/08/16) System.arraycopy が使える箇所は、置き換えます。