Java 从System.in获取unicode值
我已经创建了一个Java 从System.in获取unicode值,java,java.util.scanner,Java,Java.util.scanner,我已经创建了一个扫描仪,它可以从系统中获取输入。在中,我可以从控制台获取输入 Scanner scanner = new Scanner(System.in, "UTF-8"); 当我这样做的时候 String s = scanner.next(); 然后在控制台中输入Счדבר,字符串的值变为 控制台可以显示Unicode字符,但为什么我不能读取它们?假设系统是UTF-8编码的,这是不安全的。请参阅以了解一些解决方法。这是因为System.in以默认编码返回文本(您的默认编码显然不是UTF
扫描仪
,它可以从系统中获取输入。在
中,我可以从控制台获取输入
Scanner scanner = new Scanner(System.in, "UTF-8");
当我这样做的时候
String s = scanner.next();
然后在控制台中输入Счדבר
,字符串的值变为代码>
控制台可以显示Unicode字符,但为什么我不能读取它们?假设系统是UTF-8编码的,这是不安全的。请参阅以了解一些解决方法。这是因为System.in以默认编码返回文本(您的默认编码显然不是UTF-8)。这应该行
Scanner sc = new Scanner(System.in);
String s = sc.next();
System.out.println(s);
您可以从Java读取默认编码
System.out.println(System.getProperty("file.encoding"));