java.io.fileNotfoundException: (доступ запрещен)
-
28-09-2019 - |
Вопрос
Я пытаюсь прочитать файлы внутри папки, но когда я запускаю программу, она бросает это исключение. Я тоже пытался с некоторыми другими папками. Это бросает одно и то же исключение.
Exception in thread "main" java.io.FileNotFoundException: C:\backup (Access is denied)
at java.io.FileInputStream.open(Native Method)
at java.io.FileInputStream.<init>(Unknown Source)
Решение
Вы не можете открыть и прочитать каталог, используйте isFile()
а также isDirectory()
Методы различить файлы и папки. Вы можете получить содержимое папок, используя list()
а также listFiles()
Методы (для имена файлов и File
s Уверенно) Вы также можете указать фильтр, который выбирает подмножество перечисленных файлов.
Другие советы
- Проверьте ответ RSP
- Убедитесь, что у вас есть разрешения, чтобы прочитать файл
- Проверьте, не заблокирован ли файл другим приложением. Это актуально в основном, если вы находитесь в Windows. Например, я думаю, что вы можете получить исключение, если вы пытаетесь прочитать файл, пока он открыт в блокноте
Кроме того, в некоторых случаях важно проверить Целевые разрешения папки. Отказ Чтобы дать разрешение на запись для пользователя может быть решение. Это работало для меня.
Вот куча, которую я только что обнаружил - возможно, это может помочь кому-то еще. При использовании Windows The Classes папка не должна иметь включенное шифрование! Томкат, кажется, не нравится. Щелкните правой кнопкой мыши на папке классов, выберите «Свойства», а затем нажмите кнопку «Дополнительно ...». Убедитесь, что флажок «Содержание шифрования для защищенного данных» очищен. Перезапустите Tomcat.
Он работал для меня, так что вот надеясь, что это тоже поможет кому-то еще.