¿Cómo comprobar el conjunto de caracteres de la cadena en Java?

En mi aplicación, obtengo la información de usuario de LDAP y, a veces, el nombre de usuario completo viene en un conjunto de caracteres incorrecto. Por ejemplo:

ТеÑÑ61 ТеÑÑовиÑ61

También puede estar en inglés o en ruso y se muestra correctamente. Si el nombre de usuario cambia se actualiza en la base de datos. Incluso si cambio el valor en la base de datos no resolverá el problema.

Puedo arreglarlo antes de guardar haciendo esto

new String(incorrect.getBytes("ISO-8859-1"), "UTF-8");

Sin embargo, si lo uso para la cadena que incluye caracteres en ruso (por ejemplo, "Тест61 Тестович61") obtengo algo como esto "???? 61 ???????? 61".

¿Puede por favor sugerir algo que pueda determinar el conjunto de caracteres de la cadena?

Respuestas a la pregunta(5)

Su respuesta a la pregunta