Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java: Общие вопросы > Консольный ввод. Не получается!


Автор: glb 16.11.2005, 20:20
Мне нужно, чтоб программа читала введенное число с клавиатуры. Что у меня не так в коде я не понимаю, совсем новичок.
Не сочтите за труд, объясните чего нехватает.

Я просто в нужном месте пишу
System.in.read(f);

В ответ eclipse говорит

The method read(byte[], int, int) in the type InputStream is not applicable for the arguments (int)

Автор: LSD 16.11.2005, 20:33
Читай так:
Код
int value;
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
try
{
  value = Integer.parseInt(reader.readLine().trim());
}
catch(IOException e)
{
//Неправильный формат числа
}

Автор: glb 16.11.2005, 23:03
Спасибо!

Автор: LSD 16.11.2005, 23:14
Я немного ошибся с исключениями. Правильно так:
Код
int value;
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
try
{
  value = Integer.parseInt(reader.readLine().trim());
}
catch(NumberFormatException ex)
{
  //Неправильный формат числа
}
catch(IOException ex)
{
  //Ошибка чтения из консоли
}

Автор: glb 17.11.2005, 14:33
Можно задать самый дурацкий вопрос?
Как потом читать это мое (целое) число f?
т.е. после этого фрагмента кода пишется in.read(f) или как?
Что-то пока самостоятельно не получается разобратьсяsmile

Автор: Bikutoru 17.11.2005, 14:58
Код

int value; //Объявляем переменную
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in)); //Связываем символьный поток, из которого будем читать, с клавиатурой
try
{
  value = Integer.parseInt(reader.readLine().trim());
/*
reader.readLine() читает строку с клавиатуры, а
Integer.parseInt(reader.readLine().trim()); преобразует её к числу
*/
}
catch(NumberFormatException ex)
{
  //Неправильный формат числа
}
catch(IOException ex)
{
  //Ошибка чтения из консоли
}

Автор: glb 17.11.2005, 15:56
Все стало ясно и даже заработалоsmile Спасибо за подробный ответ!

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)