Окружающая среда: перенаправление входного файла, используемое при запуске программы, IDE: Eclipse.Java: Получение разного выхода каждый раз, когда я запускаю программу для того же входа
Я читаю пакеты из System.in (поскольку используется перенаправление ввода) и подсчитывает количество пакетов. Каждый раз, когда я запускаю программу для одного и того же ввода, я получаю разные значения (все неправильно). Кроме того, я получаю правильный счет, когда я показываю много вещей на консоли.
int packetNumber = 0;
while(System.in.available()>0)
{
System.out.println("\n" + packetNumber + ": ");
int numberOfBytes = System.in.read();
byte[] buffer = new byte[numberOfBytes];
System.in.read(buffer, 0, numberOfBytes);
packetNumber++;
}
System.out.println("Number of packets = " + packetNumber);
работает нормально с System.out.println(), но странно себя без него
Спасибо заранее.
Читать ответ Майк Nakis в http://stackoverflow.com/questions/15446689/what-is-the-use-of-system-in-read-in-java –
Ваш код не complete - откуда берутся 'packetNumber' и' numberOfBytes'? –
@ SimonMᶜKenzie, я добавил packetNumber и numberOfBytes в код –