我想发送电子邮件到一个非ASCII电子邮件地址,但不确定使用JDK8的推荐程序是什么。
我应该如何处理以下电子邮件地址?
- Dörte@example.com
- test@Sörensen.de
- Dörte@Sö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);
}
}