Java / Eclipse控制台显示替换字符

时间:2017-10-24 07:26:42

标签: java eclipse jconsole

此类将定义数量的字符打印到Eclipse控制台。但对于特定的字符,它显示16384字节后的unicode替换字符。

enter image description here

我想知道为什么会这样?对于ASCII字符,它不会发生,但对于其他unicode字符也不会发生。

我正在使用Eclipse Oxygen.1版本(4.7.1)和Java SE 8 [1.8]。

package main;

public class Main {

    // 2 REPLACEMENT CHARACTERS (�) after 16.384 bytes
    // http://www.fileformat.info/info/unicode/char/b7/index.htm
    // Hex: 0xC2 0xB7
    static final String SIGN1    = "·";

    // No replacement characters
    // http://www.fileformat.info/info/unicode/char/25CF/index.htm
    // Hex: 0xE2 0x97 0x8F
    static final String SIGN2    = "●";

    public static void main(String[] args) {
        String out ="";

        for (int i = 1; i <= 8600; i++) {
            out += SIGN1;

            // issue only occurs when \n is added
            if (i % 100 == 0) {
                out += "\n";
            }
        }

        System.out.println(out);
    }
}

0 个答案:

没有答案