53

我正在尝试读取文件夹中的文件,但是当我运行程序时,它会抛出此异常。我也尝试了其他一些文件夹。它抛出相同的异常。

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)
4

5 回答 5

50

不能打开和读取目​​录,使用isFile()isDirectory()方法区分文件和文件夹。您可以使用list()listFiles()方法(File分别用于文件名和 s)获取文件夹的内容,还可以指定一个过滤器来选择列出的文件子集。

于 2010-11-25T22:12:27.270 回答
6
  1. 检查rsp的回复
  2. 检查您是否有权读取该文件
  3. 检查文件是否未被其他应用程序锁定。如果您在 Windows 上,这主要是相关的。例如,如果您在记事本中打开文件时尝试读取文件,我认为您可能会遇到异常
于 2010-11-25T22:28:30.363 回答
3

此外,在某些情况下,检查目标文件夹权限很重要。为用户提供写权限可能是解决方案。这对我有用。

于 2014-11-10T14:55:52.630 回答
3

这是我刚刚发现的一个问题 - 也许它可能对其他人有所帮助。如果使用 Windows,classes 文件夹不能启用加密!Tomcat似乎不喜欢那样。右键单击类文件夹,选择“属性”,然后单击“高级...”按钮。确保清除“加密内容以保护数据”复选框。重新启动 Tomcat。

它对我有用,所以希望它也可以帮助其他人。

于 2018-06-04T17:46:17.523 回答
0

正确检查文件路径,通常我们提到位置而忘记指定文件名或它所属的确切位置。

于 2021-03-06T09:25:19.437 回答