Проверка доступа на запись в каталог перед созданием файлов внутри него

Мое небольшое служебное приложение запрашивает у пользователя выходной каталог через селектор файлов GUI. Затем он создает много файлов в этом выходном каталоге после некоторой обработки.

Мне нужно проверить, есть ли у приложения доступ на запись, чтобы он информировал пользователя и делал не продолжать обработку (это может занять много времени)

Моя первая попытка былаcanWrite() методjava.io.File, Но это не работает поскольку он имеет дело с самой записью каталога, а не с ее содержимым. Я видел по крайней мере один экземпляр папки Windows XP, который можно переименовать или удалить, но файлы не могут быть созданы в нем (из-за разрешений). Это на самом деле мой тестовый пример.

Я, наконец, остановился на следующем решении

//User places the input file in a directory and selects it from the GUI
//All output files will be created in the directory that contains the input file
File fileBrowse = chooser.getSelectedFile(); //chooser is a JFileChooser
File sample = new File(fileBrowse.getParent(),"empty.txt"); 
try
{
     /*
      * Create and delete a dummy file in order to check file permissions. Maybe 
      * there is a safer way for this check.
      */
      sample.createNewFile();
      sample.delete();
}
catch(IOException e)
{
      //Error message shown to user. Operation is aborted
}

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

Я подозреваю, что должен быть лучший способ для этого, но все решения, которые я нашел до сих пор с менеджерами безопасности и прочим, имеют дело с апплетами Java, а не с автономными приложениями. Я что-то пропустил?

Каков рекомендуемый способ проверки доступа к файлам внутри каталога перед на самом деле пишет файлы?

Я использую Java 5.

Ответы на вопрос(5)

Ваш ответ на вопрос