Q:

Why java String creates non-english characters like 'square'

When I try to assign my json result to a string value, it is not display non-english chars like: 
And here is my code;
            InputStream is  = connection.getInputStream();
            StringWriter sw = new StringWriter();
            IOUtils.copy(is, sw,"UTF-8");
            String s=sw.toString();
            JSONObject mainjobj= new JSONObject(s);

Is there anything wrong with my code ?

A:

The problem isn't Java, the font used by Eclipse doesn't have the glyphs to display those characters, and therefor defaults to a square. You should check the font configuration of Eclipse, maybe you can select a different font that has full unicode support.

