Преобразовать экранированный символ Unicode обратно в реальный символ

У меня есть следующее значение в строковой переменной в Java, которая имеет символы UTF-8, закодированные как показано ниже

Dodd\u2013Frank

вместо

Dodd–Frank

(Предположим, что я нене может контролировать, как это значение присваивается этой строковой переменной)

Теперь, как мне преобразовать (кодировать) это правильно и сохранить его обратно вString переменная?

Я нашел следующий код

Charset.forName("UTF-8").encode(str);

Но это возвращаетByteBuffer, но я хочуString назад.

Редактировать:

Еще немного дополнительной информации.

Когда я используюSystem.out.println(str); я получил

Dodd\u2013Frank

Я не уверен, что является правильной терминологией (UTF-8 или Unicode). Простите меня за это.

Ответы на вопрос(6)

Ваш ответ на вопрос