Я использую bufferedReader для чтения System.in от пользователя. Пользователь вводит адрес домена и исходный адрес, разделенные пробелом.
eg
auckland.ac.nz. 198.19.20.44
www.esc.auckland.ac. 173.27.28.93
stat.auckland.ac.nz. 52.159.152.105
student.auckland.ac.nz. 64.247.240.232
Теперь проблема в том, что как только пользователь заканчивает вводить данные, поток ввода не завершается, и, следовательно, программа не выполняется. Я написал некоторый код для BufferedReader, если кто-нибудь захочет его проверить и сказать мне, где я ошибся, я был бы очень признателен. Обратите внимание на две переменные «count» и «n». Могу ли я использовать их, чтобы помочь с этим?
try {
String fqdn, src, key, temp;
Integer count;
int n = 0;
while ((temp = br.readLine()) != null){
int divide = temp.indexOf(" ");
fqdn = temp.substring(0, divide); // divide the input
src = temp.substring(divide+1);
key = fqdn + " " + src;
//System.out.printf("%d: %s\n", n, key);
dht.lookup(key);
n += 1;
}
br.close();
} catch (NoSuchElementException e) {
//System.out.printf("end-of-file\n");
}