无法将UTF-8从Scanner转换为Console(System.out),原始结果为Java

时间:2017-09-12 15:05:55

标签: java encoding utf-8 character-encoding

我知道java 8使用UTF-8作为标准编码。当我使用扫描仪使用" UTF-8"从标准输入(System.in)读取字符串时然后尝试将它打印到控制台,并且字符串不在右边,如我所示,但是使用初始化的字符串,控制台显示正确的原始字符串,没有出现意外结果。我如何解决这个问题?请帮帮我! 我使用Scanner而不是String构造函数来编码input.I知道如何将输入转换为UTF-8但是我的结果发生了错误,并询问解决该问题的原因和解决方案,而不是要求使用UTF编码字符串的方法8。

这是我的代码:

run:

UTF-8

á ă ấ

� ? ?

á ă ấ

BUILD SUCCESSFUL (total time: 10 seconds)

- 这是我的输出:

-optimizations !code/simplification/variable

-keep public class * extends android.app.Activity
-keep public class * extends android.app.Fragment
-keep public class * extends android.support.v4.app.Fragment

# The Maps API uses custom Parcelables.
# Use this rule (which is slightly broader than the standard recommended one)
# to avoid obfuscating them.

-keepclassmembers class * implements android.os.Parcelable {
    static *** CREATOR;
}

# The Maps API uses serialization.

-keepclassmembers class * implements java.io.Serializable {
    static final long serialVersionUID;
    static final java.io.ObjectStreamField[] serialPersistentFields;
    private void writeObject(java.io.ObjectOutputStream);
    private void readObject(java.io.ObjectInputStream);
    java.lang.Object writeReplace();
    java.lang.Object readResolve();
}

1 个答案:

答案 0 :(得分:0)

试试这个 set utf8 eclipse 如果它没有帮助尝试从文件而不是控制台读取,看看会发生什么。