Skip to content

Instantly share code, notes, and snippets.

@ihopeudie
Created August 29, 2017 10:21
Show Gist options
  • Save ihopeudie/81e166c376aa85ccb17ccff03cc64240 to your computer and use it in GitHub Desktop.
Save ihopeudie/81e166c376aa85ccb17ccff03cc64240 to your computer and use it in GitHub Desktop.
package com.javarush.task.task18.task1810;
/*
DownloadException javarush
1 Считывать с консоли имена файлов.
2 Если файл меньше 1000 байт, то:
2.1 Закрыть потоки работы с файлами.
2.2 Выбросить исключение DownloadException.
Требования:
1. Программа должна считать имена файлов с консоли.
2. Для чтения из файлов используй поток FileInputStream.
3. Программа должна работать, пока введенный файл не окажется меньше 1000 байт.
4. Программа должна завершиться исключением DownloadException.
5. Поток FileInputStream должен быть закрыт.
*/
import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStreamReader;
public class Solution {
public static void main(String[] args) throws DownloadException, IOException {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
FileInputStream iStream;
while (true) {
String fName = reader.readLine();
if (fName.isEmpty()) {
reader.close();
throw new DownloadException();
}
iStream = new FileInputStream(fName);
if (iStream.available()<1000) {
reader.close();
iStream.close();
throw new DownloadException();
}
}
}
public static class DownloadException extends Exception {
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment