Обнаружьте первопричину для java.io. FileNotFoundException

Инструменты-> Опции-> Проект и Решения-> Общий

Проверка поле "Track Active Item in Solution Explorer"

13
задан Daniel Schneller 2 November 2009 в 12:35
поделиться

3 ответа

Перед созданием FileOutputStream самостоятельно проверьте наличие файлов / разрешений на запись.

File test_csv = new File( "\\server\share\directory\test.csv" );

if ( test_csv.exists( ) && test_csv.canWrite( ) )
{
  // Create file writer
  ...
}
else
{
  // notify user
  ...
}

Обратите внимание, что иногда вам придется проверять разрешения на чтение / запись на родительский для вашего целевого файла, если вам нужно создать новый файл.

File test_csv = new File( "\\server\share\directory\test.csv" );
File parent_dir = test_csv.getParentFile( )

if ( parent_dir.exists( ) && parent_dir.canWrite( ) )
{
  // Create file writer
  ...
}
else
{
  // notify user
  ...
}
10
ответ дан 2 December 2019 в 00:46
поделиться

Вы можете посмотреть свойства файла, используя объект java.io.File перед попыткой прочитать файл. Существует метод canRead, с помощью которого вы можете определить, может ли пользователь читать файл.

2
ответ дан 2 December 2019 в 00:46
поделиться

Один из подходов - посмотреть на фактический тип исключения: как вы можете видеть из docs , существует множество подклассов, которые предоставляют более детальную информацию.

Однако вы, вероятно, далеко не уйдете с этим. Как и в случае с большинством проверенных исключений, обычно лучше регистрировать / сообщать об исключении и спрашивать пользователя, как его исправить.

1
ответ дан 2 December 2019 в 00:46
поделиться
Другие вопросы по тегам:

Похожие вопросы: