2014-01-30 2 views

ответ

4

Символы, которые требуют utf8mb4, представлены как суррогатная пара в Java и занимают 2 символа. Поэтому простой способ их обнаружения проверяет, является ли длина строки в символах одинаковой с количеством кодовых точек:

boolean requiresMb4(String s) { 
    int len = s.length(); 
    return len != s.codePointCount(0, len); 
} 
Смежные вопросы