Scanner sc=new Scanner(System.in);
        String next = sc.next();
        System.out.println(next);

解决方案 »

  1.   

    BufferedReader input = new BufferedReader(
            new InputStreamReader(System.in, "UTF-8"));
    String s = input.readLine();
    System.out.println(s);
    使用InputStreamReader记得指定字符编码,不指定字符编码都是危险的做法,因为不同机器不同系统上的默认编码可能不同,就算你非常肯定就是要用默认编码,你也最好显式地指定使用默认编码,或者至少用注释醒目地说明这里使用的是什么编码
      

  2.   

    没有用啊!这样设置之后输入中文,输出之后还是乱码。
    你是什么系统?地区设置的哪里?还有默认系统编码是?
    一般来说只要保证和控制台编码相同就没有问题啊
    win7 64位旗舰版中文 什么地区设置? 默认应该是GBK的。此java源文件是utf-8编码的,我在Common下面把控制台编码也设置为utf-8编码。比如说,输入”你好“,输出如图所示的乱码。我知道如果都用GBK编码,就不会出现中文乱码了。我是想用utf-8读取键盘输入也不要出现乱码啊。
      

  3.   

    额MyEclipse。。这好像是MyEclipse的一个问题吧,我看很多“解法办法”都是改成GBK编码
    你是必须要用UTF-8吗?
      

  4.   

    是的,我必须要用utf-8的,因为涉及到gbk不包含的字符啊。您有什么好的解决方法吗?
      

  5.   

    我这里没装MyEclipse所以不好测试,你试过其他IDE/编辑器有同样的问题吗?