zoukankan      html  css  js  c++  java
  • Java中的编码乱码问题

    1. Eclipse的Run Configurations中,可以配置Console的Encoding

     

    Eclipse中使用 mvn clean package命令来执行。

     设置为MS932时,下面的代码,①是logback的logger输出,②是System.out的输出,③是Junit的断言。

      public void testApp() {
        assertTrue(true);
    
        LOGGER.warn("LOGGER.warn TestAppTest:モック機能が動作しています。");
        System.out.print("System.out.print TestAppTest:モック機能が動作しています。");
        String str = "str";
        Assert.assertNull("nullではありません。", str);
      }

    得到的结果,  ①、②、③都OK:

    设置为UTF-8时,得到的结果,只有③是OK的:

    Eclipse中使用 Junit相关命令来执行,得到的结果都是OK的。没有乱码。似乎和Encoding配置无关。

    2.Git Bash中可以设定其编码 Character set

    Git Bash中执行mvn clean package.

    编码为SJIS时, ①、②、③都OK

    编码为UTF-8时, ①、②、③都NG

     Question:

    1.Eclipse Console和Git Bash Console执行得到的结果为什么不一样?也就是乱码的地方不一样?

    =>原因可能就是两个Console的编码设置得不一样。

    2.两个Console的编码设置为一样后,得到的乱码依然有不一样的地方,为什么???(TODO)

    都设为UTF-8时,

    Git Bash,③是NG。

    Eclipse,③是OK。

    TODO

    Links: GitHub Source

  • 相关阅读:
    剑指offer十二之数值的整数次方
    剑指offer十一之二进制中1的个数
    剑指offer十之矩形覆盖
    剑指offer九之变态跳台阶
    剑指offer八之跳台阶
    程序员的生活观
    程序员,如何远离你的电脑
    生活管理实用技能
    分享共筑 : 伟大的理念
    技术人员,要学会关心别人
  • 原文地址:https://www.cnblogs.com/niaomingjian/p/8715681.html
Copyright © 2011-2022 走看看