mre
mre

Reputation: 44250

How to print [Simplified] Chinese characters to Eclipse console?

I have the following code:

import java.io.PrintStream;
import java.io.UnsupportedEncodingException;
import java.util.Locale;

public final class ChineseCharacterDemo {

    public static void main(String[] args) throws UnsupportedEncodingException {
        Locale locale = new Locale("zh", "CN");
        System.out.println(locale.getDisplayLanguage(Locale.SIMPLIFIED_CHINESE));
    }

}

And even after setting the character encoding of the Eclipse console to UTF-8, I get boxes, instead of the following:

中文

What am I doing wrong?


EDIT-

After changing the Eclipse console font to something capable of rendering Chinese characters, I get the following, incorrect, display:

enter image description here

But, when I copy/paste the text here, it correctly renders the Simplified Chinese text. Again, what's going on here? Actually, if you look at the rendered text in the console, it's the correct characters, but they're on their side!


Resolution-

So, it turns out that I needed to do the following:

  1. Change character encoding of Eclipse console to UTF-8
  2. Change font to Arial Unicode MS (i.e. any font capable of rendering Chinese text)

Upvotes: 5

Views: 9151

Answers (2)

Change the font for the Console to one which actually contains the Chinese characters you need to see.

Upvotes: 5

Kent
Kent

Reputation: 195219

here I copied your class and did a test.

if the .java file encoded with utf-8, it shows

中文

otherwise, (iso-8859-1 for example) it shows something like

中æ

so maybe you could try to set the encoding of your java source file to utf-8.

Upvotes: 2

Related Questions