DownloadException 1 Считывать с консоли имена файлов. 2 Если файл меньше 1000 байт, то: 2.1 Закрыть потоки работы с файлами. 2.2 Выбросить исключение DownloadException

package com.javarush.task.task18.task1810;

/ DownloadException /

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{

        BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
        try {
        FileInputStream inputStream = new FileInputStream(reader.readLine());

        while (inputStream.available() > 1000)
            inputStream = new FileInputStream(reader.readLine());

        inputStream.close();

        throw new DownloadException();

    } catch (IOException e){

    }

}

public static class DownloadException extends Exception {

}

}

задан 20 Мар, 11:20

Kupnu4's gravatar image

Kupnu4
555
одобрено: 33%

закрыто 20 Сен, 17:05

AndyRad's gravatar image

AndyRad
13.1k29

Вопрос был закрыт по следующей причине: "Problem is not reproducible or outdated" AndyRad 20 Сен, 17:05


привет

из условия: 2.1 Закрыть потокИ работы с файлами. где список с открытыми потоками? чтоб потом закрыть

ссылка

опубликован 20 Мар, 15:00

Rediska's gravatar image

Rediska
2.4k6
одобрено: 45%

Жесть... валидатор значит переписали и тут... и в худшую сторону...

(24 Мар, 06:30) Rediska

у меня этот код не проходит, тот же самый time out

(24 Мар, 06:07) Kupnu4

BufferedReader reader = new BufferedReader( new InputStreamReader( System.in)); ArrayList<fileinputstream> fis = new ArrayList<fileinputstream>(); FileInputStream inFile = null;

    do{
        String fileName1 = reader.readLine();
        inFile = new FileInputStream( fileName1 );
        fis.add( inFile);
    }while( inFile.available()>1000 );

for( int i =0; i < fis.size(); i++){
        fis.get(i).close();
    }
    throw new DownloadException();
}

public static class DownloadException extends Exception{

}
(21 Мар, 14:11) Rediska

привет добавил ArrayList<fileinputstream> list = new ArrayList<>();

поменял while (inputStream.available() > 1000){ inputStream = new FileInputStream(reader.readLine()); list.add(inputStream); } for (int i = 0; i < list.size(); i++){ list.get(i).close(); }

все равно долго работает, выдает timeout

(21 Мар, 12:15) Kupnu4

Следить за вопросом

По Email:

После авторизации вы сможете подписаться на любые обновления здесь

Основы Markdown

  • *italic* or _italic_
  • **bold** or __bold__
  • ссылка:[текст](http://url.com/ "заголовок")
  • изображение?![alt текст](/path/img.jpg "заголовок")
  • нумерованный список: 1. Foo 2. Bar
  • Для того чтобы добавить разрыв строки просто добавьте два пробела.
  • основные HTML тэги, также поддерживаются

Тэги:

×7
×3
×1
×1

Задан: 20 Мар, 11:20

Просмотров: 168 раз

Отредактирован: 20 Сен, 17:05