Convert escaped Unicode character back to actual character
I have the following value in a string variable in Java which has UTF-8 characters encoded like below Dodd\u2013Frank instead of Dodd–Frank (Assume that I don't have control over how this value is assigned to this string variable) Now how do I convert (encode) it properly and store it back in a String variable? I found the following code Charset.forName("UTF-8").encode(str); But this returns a ByteBuffer , but I want a String back. Edit : Some more additional information. When I use System.out.println(str); I get Dodd\u2013Frank I am not sure what is the correct terminology (UTF-8 or unicode).