クラス InternetAddress
- 実装されたすべてのインターフェース:
SerializableSE
,CloneableSE
- 作成者:
- Bill Shannon, John Mani
- 関連事項:
フィールドのサマリー
フィールドコンストラクターの概要
コンストラクターコンストラクター説明デフォルトコンストラクター。InternetAddress
(StringSE address) コンストラクター。InternetAddress
(StringSE address, boolean strict) 指定された文字列を解析し、InternetAddress を作成します。InternetAddress
(StringSE address, StringSE personal) 住所と個人名を指定して InternetAddress を作成します。InternetAddress
(StringSE address, StringSE personal, StringSE charset) 住所と個人名を指定して InternetAddress を作成します。メソッドのサマリー
修飾子と型メソッド説明clone()
この InternetAddress オブジェクトのコピーを返します。boolean
等価演算子。メールアドレスを取得します。getGroup
(boolean strict) グループアドレスのメンバーを返します。static InternetAddress
getLocalAddress
(Session session) 現在のユーザーを表す InternetAddress オブジェクトを返します。個人名を取得します。getType()
このアドレスの型を返します。int
hashCode()
アドレスのハッシュコードを計算します。boolean
isGroup()
このアドレスが RFC 822 グループアドレスであるかどうかを示します。static InternetAddress[]
指定されたコンマ区切りのアドレスシーケンスを InternetAddress オブジェクトに解析します。static InternetAddress[]
指定されたアドレスのシーケンスを InternetAddress オブジェクトに解析します。static InternetAddress[]
parseHeader
(StringSE addresslist, boolean strict) 指定されたアドレスのシーケンスを InternetAddress オブジェクトに解析します。void
setAddress
(StringSE address) メールアドレスを設定します。void
setPersonal
(StringSE name) 個人名を設定します。void
setPersonal
(StringSE name, StringSE charset) 個人名を設定します。toString()
このアドレスを RFC 822/RFC 2047 エンコードされたアドレスに変換します。static StringSE
InternetAddress オブジェクトの指定された配列をアドレス文字列のコンマ区切りのシーケンスに変換します。static StringSE
InternetAddress オブジェクトの指定された配列をアドレス文字列のコンマ区切りのシーケンスに変換します。Unicode 文字の適切にフォーマットされたアドレス(RFC 822 構文)を返します。static StringSE
toUnicodeString
(Address[] addresses) InternetAddress オブジェクトの指定された配列をアドレス文字列のコンマ区切りのシーケンスに変換します。static StringSE
toUnicodeString
(Address[] addresses, int used) InternetAddress オブジェクトの指定された配列をアドレス文字列のコンマ区切りのシーケンスに変換します。void
validate()
このアドレスが RFC 822 の構文規則に準拠していることを確認してください。
フィールドの詳細
address
メールアドレス。personal
個人名。encodedPersonal
RFC 2047 でエンコードされたバージョンの個人名。このフィールドと
personal
フィールドはお互いを追跡するため、サブクラスがこれらのフィールドの 1 つを直接設定する場合、適切に再計算されるように、他のフィールドをnull
に設定する必要があります。
コンストラクターの詳細
InternetAddress
public InternetAddress()デフォルトコンストラクター。InternetAddress
コンストラクター。指定された文字列を解析し、InternetAddress を作成します。解析の詳細については、
parse
メソッドを参照してください。アドレスは、「厳密な」解析を使用して解析されます。このコンストラクターは、strict
がtrue
の場合にInternetAddress(String address, boolean strict)
コンストラクターが行う追加の構文チェックを実行しません。このコンストラクターはInternetAddress(address, false)
と同等です。- パラメーター:
address
- RFC822 形式のアドレス- 例外:
AddressException
- 解析が失敗した場合
InternetAddress
指定された文字列を解析し、InternetAddress を作成します。strict
が false の場合、アドレスの詳細な構文はチェックされません。- パラメーター:
address
- RFC822 形式のアドレスstrict
- RFC822 構文を適用する- 例外:
AddressException
- 解析が失敗した場合- 導入:
- JavaMail 1.3
InternetAddress
住所と個人名を指定して InternetAddress を作成します。このアドレスは、構文的に有効な RFC822 アドレスであると想定されています。- パラメーター:
address
- RFC822 形式のアドレスpersonal
- 個人名- 例外:
UnsupportedEncodingExceptionSE
- 個人名を指定された文字セットでエンコードできない場合
InternetAddress
public InternetAddress(StringSE address, StringSE personal, StringSE charset) throws UnsupportedEncodingExceptionSE 住所と個人名を指定して InternetAddress を作成します。このアドレスは、構文的に有効な RFC822 アドレスであると想定されています。- パラメーター:
address
- RFC822 形式のアドレスpersonal
- 個人名charset
- 名前の MIME 文字セット- 例外:
UnsupportedEncodingExceptionSE
- 個人名を指定された文字セットでエンコードできない場合
メソッドの詳細
clone
この InternetAddress オブジェクトのコピーを返します。getType
このアドレスの型を返します。InternetAddress の型は "rfc822" です。setAddress
メールアドレスを設定します。- パラメーター:
address
- Email アドレス
setPersonal
個人名を設定します。名前に US-ASCII 以外の文字が含まれている場合、名前は RFC 2047 に従って指定された文字セットを使用してエンコードされます。名前に US-ASCII 文字のみが含まれている場合、エンコードは行われず、名前がそのまま使用されます。- パラメーター:
name
- 個人名charset
- RFC 2047 に従って名前をエンコードするために使用される MIME 文字セット- 例外:
UnsupportedEncodingExceptionSE
- 文字セットエンコーディングが失敗した場合。- 関連事項:
setPersonal
個人名を設定します。名前に US-ASCII 以外の文字が含まれている場合、名前はプラットフォームのデフォルトの文字セットを使用してエンコードされます。名前に US-ASCII 文字のみが含まれている場合、エンコードは行われず、名前がそのまま使用されます。- パラメーター:
name
- 個人名- 例外:
UnsupportedEncodingExceptionSE
- 文字セットエンコーディングが失敗した場合。- 関連事項:
getAddress
メールアドレスを取得します。- 戻り値:
- Email アドレス
getPersonal
個人名を取得します。名前が RFC 2047 に従ってエンコードされている場合、デコードされ、Unicode に変換されます。デコードまたは変換が失敗した場合、生データはそのまま返されます。- 戻り値:
- 個人名
toString
このアドレスを RFC 822/RFC 2047 エンコードされたアドレスに変換します。結果の文字列には US-ASCII 文字のみが含まれるため、メールセーフです。toUnicodeString
Unicode 文字の適切にフォーマットされたアドレス(RFC 822 構文)を返します。- 戻り値:
- Unicode アドレス文字列
- 導入:
- JavaMail 1.2
equals
等価演算子。hashCode
public int hashCode()アドレスのハッシュコードを計算します。toString
InternetAddress オブジェクトの指定された配列をアドレス文字列のコンマ区切りのシーケンスに変換します。結果の文字列には US-ASCII 文字のみが含まれるため、メールセーフです。- パラメーター:
addresses
- InternetAddress オブジェクトの配列- 戻り値:
- アドレスのカンマ区切りの文字列
- 例外:
ClassCastExceptionSE
- 指定された配列内のいずれかのアドレスオブジェクトが InternetAddress オブジェクトではない場合。これは RuntimeException であることに注意してください。
toUnicodeString
InternetAddress オブジェクトの指定された配列をアドレス文字列のコンマ区切りのシーケンスに変換します。結果の文字列には Unicode 文字が含まれます。- パラメーター:
addresses
- InternetAddress オブジェクトの配列- 戻り値:
- アドレスのカンマ区切りの文字列
- 例外:
ClassCastExceptionSE
- 指定された配列内のいずれかのアドレスオブジェクトが InternetAddress オブジェクトではない場合。これは RuntimeException であることに注意してください。- 導入:
- JavaMail 1.6
toString
InternetAddress オブジェクトの指定された配列をアドレス文字列のコンマ区切りのシーケンスに変換します。結果の文字列には US-ASCII 文字のみが含まれるため、メールセーフです。'used' パラメーターは、結果のアドレスシーケンス文字列が挿入されるフィールドですでに使用されている文字位置の数を指定します。結果のアドレスシーケンス文字列の改行位置を決定するために使用されます。
- パラメーター:
addresses
- InternetAddress オブジェクトの配列used
- アドレス文字列が挿入されるフィールドで、すでに使用されている文字位置の数- 戻り値:
- アドレスのカンマ区切りの文字列
- 例外:
ClassCastExceptionSE
- 指定された配列内のいずれかのアドレスオブジェクトが InternetAddress オブジェクトではない場合。これは RuntimeException であることに注意してください。
toUnicodeString
InternetAddress オブジェクトの指定された配列をアドレス文字列のコンマ区切りのシーケンスに変換します。結果の文字列には Unicode 文字が含まれます。'used' パラメーターは、結果のアドレスシーケンス文字列が挿入されるフィールドですでに使用されている文字位置の数を指定します。結果のアドレスシーケンス文字列の改行位置を決定するために使用されます。
- パラメーター:
addresses
- InternetAddress オブジェクトの配列used
- アドレス文字列が挿入されるフィールドで、すでに使用されている文字位置の数- 戻り値:
- アドレスのカンマ区切りの文字列
- 例外:
ClassCastExceptionSE
- 指定された配列内のいずれかのアドレスオブジェクトが InternetAddress オブジェクトではない場合。これは RuntimeException であることに注意してください。- 導入:
- JavaMail 1.6
getLocalAddress
現在のユーザーを表す InternetAddress オブジェクトを返します。メールアドレス全体は、"mail.from" プロパティで指定できます。設定されていない場合、"mail.user" および "mail.host" プロパティが試行されます。それらが設定されていない場合は、"user.name" プロパティとInetAddress.getLocalHost
メソッドが試行されます。この情報へのアクセス中に発生する可能性のあるセキュリティ例外は無視されます。メールアドレスを特定できない場合は、null が返されます。- パラメーター:
session
- プロパティのルックアップに使用されるセッションオブジェクト- 戻り値:
- 現在のユーザーのメールアドレス
parse
指定されたアドレスのコンマ区切りシーケンスを InternetAddress オブジェクトに解析します。アドレスは RFC822 構文に従う必要があります。- パラメーター:
addresslist
- カンマ区切りのアドレス文字列- 戻り値:
- InternetAddress オブジェクトの配列
- 例外:
AddressException
- 解析が失敗した場合
parse
指定されたアドレスのシーケンスを InternetAddress オブジェクトに解析します。strict
が false の場合、スペースで区切られた単純なメールアドレスも許可されます。strict
が true の場合、RFC822 構文ルールの多く(すべてではない)が適用されます。特に、strict
が true の場合でも、単純な名前("@domain" の部分がない)で構成されるアドレスは許可されます。そのような「不正な」アドレスは、実際のメッセージでは珍しくありません。非厳密な解析は、通常、人間が入力したメールアドレスのリストを解析するときに使用されます。厳密な解析は、通常、メールメッセージのアドレスヘッダーを解析するときに使用されます。
- パラメーター:
addresslist
- カンマ区切りのアドレス文字列strict
- RFC822 構文を適用する- 戻り値:
- InternetAddress オブジェクトの配列
- 例外:
AddressException
- 解析が失敗した場合
parseHeader
public static InternetAddress[] parseHeader(StringSE addresslist, boolean strict) throws AddressException 指定されたアドレスのシーケンスを InternetAddress オブジェクトに解析します。strict
が false の場合、個々のアドレスの完全な構文規則は適用されません。strict
が true の場合、RFC822 構文ルールの多く(すべてではない)が適用されます。実際のメッセージに表示される「無効な」アドレスの範囲をより適切にサポートするために、このメソッドは、strict フラグが false の場合、
parse
メソッドよりも少ない構文ルールを適用し、strict フラグが true の場合、より多くのルールを適用します。strict フラグが false で、解析が 1 つまたは複数のメールアドレスの分離に成功した場合、アドレス自体の構文はチェックされません。- パラメーター:
addresslist
- カンマ区切りのアドレス文字列strict
- RFC822 構文を適用する- 戻り値:
- InternetAddress オブジェクトの配列
- 例外:
AddressException
- 解析が失敗した場合- 導入:
- JavaMail 1.3
validate
このアドレスが RFC 822 の構文規則に準拠していることを確認します。現在の実装では、すべてではなく多くの構文規則がチェックされます。アドレスの構文が正しい場合でも、その名前のメールボックスが存在する保証はありません。- 例外:
AddressException
- アドレスが有効でない場合。- 導入:
- JavaMail 1.3
isGroup
public boolean isGroup()このアドレスが RFC 822 グループアドレスであるかどうかを示します。グループアドレスは、ほとんどのメールサーバーでサポートされているメーリングリストアドレスとは異なることに注意してください。グループアドレスはめったに使用されません。詳細については、RFC 822 を参照してください。- 戻り値:
- このアドレスがグループを表す場合は true
- 導入:
- JavaMail 1.3
getGroup
グループアドレスのメンバーを返します。グループには、0、1、またはそれ以上のメンバーが含まれます。このアドレスがグループでない場合、null が返されます。strict
パラメーターは、厳密な RFC 822 ルールを使用してグループリストを解析するかどうかを制御します。解析はparseHeader
メソッドを使用して行われます。- パラメーター:
strict
- 厳密な RFC 822 ルールを使用しますか?- 戻り値:
- InternetAddress オブジェクトの配列、または null
- 例外:
AddressException
- グループリストを解析できない場合- 導入:
- JavaMail 1.3