My program reads in a UTF-8 file containing some Japanese characters, stores them into a String variable and then attempts to print using: System.out.println(myString); . However, it doesn't display correctly in XCode or the Terminal (shows mostly question marks). When I follow it in the debugger, the Japanese characters show up correctly stored in the variable. Also, if I just do: System.out.println("japaneseCharacters"); where japaneseCharacters are actual japaneseCharacters, they print out correctly. I've made sure that my source files, the file being read in, and the terminal are both set to UTF-8. Can somebody point me in the right direction?