The Problem
Eclipse default encoding is Cp1252, This will cause Eclipse output non-English characters as question marks(?) or some weird characters in the console.
Change Encoding Globally
If we want to change the text encoding globally, we can open Window -> Preferences -> General -> Workspace. Change the Text file encoding from default Cp1252 to UTF-8.
Or we can change file.encoding in eclipse.ini by adding:-Dfile.encoding=UTF-8, then restart Eclipse.
Change Encoding per Application
If we just want to change console encoding for one application, open Run As –> Run Configurations, click the Common tab, change the encoding from default to UTF-8.
Test Code
The following test code will get default file encoding, and print chines words: 大家好.
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.encoding=UTF-8
Resources
Interactive native2ascii
native2ascii - Native-to-ASCII Converter
Eclipse default encoding is Cp1252, This will cause Eclipse output non-English characters as question marks(?) or some weird characters in the console.
Change Encoding Globally
If we want to change the text encoding globally, we can open Window -> Preferences -> General -> Workspace. Change the Text file encoding from default Cp1252 to UTF-8.
Or we can change file.encoding in eclipse.ini by adding:-Dfile.encoding=UTF-8, then restart Eclipse.
Change Encoding per Application
If we just want to change console encoding for one application, open Run As –> Run Configurations, click the Common tab, change the encoding from default to UTF-8.
Test Code
The following test code will get default file encoding, and print chines words: 大家好.
public void testDefaultEncoding() throws UnsupportedEncodingException { System.out.println(System.getProperty("file.encoding")); PrintStream sysout = new PrintStream(System.out, true, "UTF-8"); //print 大家好 sysout.println("\u5927\u5bb6\u597d"); }Change log4j encoding
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.encoding=UTF-8
Resources
Interactive native2ascii
native2ascii - Native-to-ASCII Converter