我遇到了Java的Scanner类问题。当我输入一定数量的字符时,我得到一个更加疯狂的字符,没有任何改变。例如,使用代码:
public static void main(String args[]){
Scanner input = new Scanner(System.in);
System.out.println("Begin");
String foo = input.nextLine();
System.out.println(foo);
}
如果我输入字符串%ʒʼnÛ
,我将得到输出字符串%ʒʼnÛ
当我对实际字符串进行绝对零更改时。有人可以帮我找到避免这种情况的方法吗? (BTW避免使用字符集%ʒʼnÛ
是不太可能的,因为它是编码过程的一部分。
答案 0 :(得分:2)
尝试指定charset:
Scanner input = new Scanner(System.in, "UTF-8");