It all boils down that you need to read, treat and display it as UTF-8 all the way. For the reading part, you can use InputStreamReader
to read an arbitrary InputStream
using a specific encoding.
reader = new InputStreamReader(new FileInputStream("/file.txt"), "UTF-8");
For the treatment part, the Java language should do it transparently without any problems since it perfectly understands Unicode. For the displaying part, that depends on how/where exactly you're displaying it. At least, it should be configured to use UTF-8 for that.