比如String str= Buf.ReadLine();
然后在控制台输入中文,打印出来为什么是乱码
怎么解决!

解决方案 »

  1.   

    你是用Eclipse运行的还是在命令行窗口运行的?
      

  2.   

    这种问题有很大可能就是字符编码格式的问题,一般utf-8是支持中文的
      

  3.   

    同意三楼的,可能是编码风格的问题修改一下,试一试utf-8,这个不行就用gbk试试~~
      

  4.   

    就是str.getBytes("utf-8");
    这样吗?
      

  5.   

    我也遇到这样的问题了.
    下面的代码不行
    public void ScannerTest()
      {
        java.util.Scanner input = new java.util.Scanner(System.in);
        System.out.print("输入字符串:");
        String s = input.next();
        System.out.println("您输入的字符串为:" + s);
      }下面的不行
    public void printConsoleChar() throws IOException
      {
        System.out.print("Enter a Char:");
        char i = (char) System.in.read();
        System.out.println("your char is :" + i);
      }下面也不行
     public void printConsoleLine() throws IOException
      {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        String str = null;
        System.out.println("Enter your value:");
        str = br.readLine();
        str = str.getBytes("gb2312").toString();
        System.out.println("your value is :" + str);
      }
      
    搜遍全网也没找着什么解决办法?难道是我电脑有问题?
      

  6.   

    我也是 有没有大神帮忙解决,我很怀疑是机器的语言环境问题,但是我刚学java 1周 有点力不从心!
      

  7.   

    String readFlag = request.getParameter("readFlag").toString().trim();
    MessageDAO mesDAO = new MessageDAO();
    String result = mesDAO.messageAllInfo(readFlag);
    System.out.print("为什么乱码!");
    out.print(result);
    out.close();
    这样打印都是乱码。
      

  8.   

    将容器改为默认(GBK),而不是用UTF-8就不会乱了
      

  9.   

    要改为GBK的才不会乱,我突然心血来潮练习一下,也是,擦