有没有办法找出是否支持编码? E. g。像这样的方法:
isSupported("UTF-8") == true
和
isSupported("UTF-13") == false
我需要这个来验证我的MimeMessages的Content-Disposition-Header是否正确。
答案 0 :(得分:10)
尝试以下方法:
Charset.isSupported("UTF-8")
当名称为RuntimeException
或名称无效时,此方法可能会抛出null
。
答案 1 :(得分:6)
boolean isCharsetSupported(String name) {
try {
Charset.forName(name);
return true;
} catch (UnsupportedCharsetException | IllegalCharsetNameException | IllegalArgumentException e) {
return false;
}
}
或没有try/catch
块:
boolean isCharsetSupported(String name) {
return Charset.availableCharsets().keySet().contains(name);
}