Javaでメールで日本語で

ほげ<hoge@hoge.com>

をtoにすると、InternetAddress.parse でおちる。
調べていくと
「ほげ」部分だけはエンコードしなくてはならないそうだ。
5,6年JavaMailをさわっているはずだがしらなかったよ?

≪参考≫
http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=27772&forum=12&5
http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=12787&forum=12
http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=21342&forum=12


// 日本語が入っているかなんとなくちぇっく
int idx = to.indexOf("<");
if (idx > 0) {
    String person = to.substring(0, idx);
    String addr = to.substring(idx, to.length());
    to = MimeUtility.encodeText(person, "iso-2022-jp", "B") + addr;
}

mimeMessage.setRecipients(Message.RecipientType.TO, InternetAddress
                    .parse(to, false));