Я хочу отправить электронное письмо на не-ASCII адрес электронной почты, и я не уверен, что это рекомендуемая процедура с использованием JDK8.
Как мне обращаться со следующими адресами электронной почты?
- Dö[email protected]
- [email protected]örensen.de
- Dö[email protected]örensen.de
Есть ли какие-либо соображения безопасности, о которых нужно знать?
Будет ли этот примерный код достаточным?
import java.net.IDN;
public class IDNMailHelper {
public static String toIdnAddress(String mail) {
if (mail == null) {
return null;
}
int idx = mail.indexOf('@');
if (idx < 0) {
return mail;
}
return localPart(mail, idx) + "@" + IDN.toASCII(domain(mail, idx));
}
private static String localPart(String mail, int idx) {
return mail.substring(0, idx);
}
private static String domain(String mail, int idx) {
return mail.substring(idx + 1);
}
}