Вход
Быстрая регистрация
Если вы у нас впервые: О проекте FAQ
0

JAVA: как осуществить повторный запрос файла при его отсутствии?

AndrewR [206] 2 месяца назад

Есть следующий код:

public class InputReaderTest {

public static void main(String[] args) throws IOException {

BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));

String sourceFileName = reader.readLine();

File file = new File(sourceFileName);

try {

while (!file.exists()) {

System.out.println("Файл не существует.");

sourceFileName = reader.readLine();

file = new File(sourceFileName);

}

} catch (FileNotFoundException e) {

System.out.println("Ошибка");

}

FileInputStream fileInputStream = new FileInputStream(sourceFileName);

String destinationFileName = reader.readLine();

FileOutputStream fileOutputStream = new FileOutputStream(destinationFileName);

while (fileInputStream.available() > 0) {

int data = fileInputStream.read();

fileOutputStream.write(data);

}

fileInputStream.close();

fileOutputStream.close();

}

}

Программа должна запрашивать имя файла из консоли, и если файла нет, то должна повторно запрашивать его имя выводя при этом сообщение, что файл не найден. Хорошо работает и без блока TRY-CATCH, но по идее надо обернуть File ( да FileInput / Output Stream) в блок, так как они генерируют FileNotFoundException. Так вот вопрос: корректен ли данный код? Или Лучше было поместить блок Т-С в цикл?

Знаете ответ?
Есть интересный вопрос? Задайте его нашему сообществу, у нас наверняка найдется ответ!
Делитесь опытом и знаниями, зарабатывайте награды и репутацию, заводите новых интересных друзей!
Задавайте интересные вопросы, давайте качественные ответы и зарабатывайте деньги. Подробнее..
Быстрая регистрация
OpenID