Я не вижу проблемы с кодом. (Кроме того, я бы поставил его в своем собственном методе; не используйте выдуманные аббревиатуры, такие как fis
; openCSV
, вероятно, должно вызывать исключение и, вероятно, не должно быть статическим.)
Очевидная причина, по которой вы не хотите использовать File.exists
, заключается в том, что две операции над путем к файлу не будут атомарными. Это общая проблема с файловыми операциями. Храните вещи как можно более атомарными (обратите внимание, это работает против «делать только одну вещь»). Две операции также могут выполняться медленнее, чем одна.
Кроме того, File.exists
может не определить, существует ли файл или нет. Например, у вас могут отсутствовать разрешения на чтение каталога (минимальные разрешения - хорошая вещь).