Кодировка java.util.Scanner
столкнулся с проблемой кодировки текста, который сохраняет обьект класса Scanner.
Пример простого кода сравнения сохраненного значения и заранее прописанного:
import java.util.Scanner;
public class App {
public static void main(String[] args){
Scanner cons = new Scanner(System.in);
String text = cons.nextLine();
System.out.println(text);
if (text.equals("р")) {
System.out.println("right");
}
else{
System.out.println("wrong");
}
}
}
Он должен сравнить вписанное значение с русской "р", которую прописываю используемой кодировкой, и выводить входную строку.
Проблема в том, что right никогда не выдает, а при выводе вводимого символа пустота или знак вопроса(зависит от кодировки). Пробовал запускать с кодировками UTF-8, UTF-16, Windows 1252, Windows 1251. Пробовал также менять кодировку системы через панель управления на UTF-8, но результата нет.
Пишу код в Visual Studio Code, но при запуске через терминал происходит то же самое.
Версия JDk - 21
ОС Windows 10