Комментарии 4
Чисто любопытно — никто не создает директории с расширением .tmp?
Ведь если кто-то создал такую директорию, то надо ее тоже «чистить», а не игнорировать.
Ведь если кто-то создал такую директорию, то надо ее тоже «чистить», а не игнорировать.
+1
А может вы знаете лучшие решения? Добро пожаловать в комменты!
Вызов принят! Лучшие-нелучшие, но есть, что обсуждать. :)
+2
Интересный момент что код Леонида с очисткой директории делает не то что ожидается, он хочет удалить все файлы с расширением ".tmp", но нет, будет удален только файл с названием ".tmp", ведь был использован метод Path::endsWith, который делает совсем не тоже самое что метод String::endsWith.
+3
Отлично подмечено, так и есть. Скажу в свое оправдание, что эту ошибку мы случайно добавили, когда готовили тест. Но, в результате, тест получился даже интереснее :).
Стоит еще упомянуть, что в классе Files есть методы, возвращающие Stream, а не DirectoryStream. Эти Stream являются обертками над DirectoryStream, и их также надо закрывать, чтобы не было утечек.
Стоит еще упомянуть, что в классе Files есть методы, возвращающие Stream, а не DirectoryStream. Эти Stream являются обертками над DirectoryStream, и их также надо закрывать, чтобы не было утечек.
+3
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Разбор задачек от Одноклассников на JPoint 2018