Java 访问被拒绝。找不到文件异常
我试图阅读的内容的图像文件夹,其中有三个不同的图像。我能够找到文件夹,但它不允许我阅读内容。它给出了一个异常,表示找不到文件访问被拒绝。我更改了自己在C驱动器中本地system for Java文件夹上的访问权限,但问题仍然存在。我读到这个问题,需要提供文件名,但是文件夹的路径已经包含文件名。我做错了什么?如果有什么不同的话,我正在从事一个Maven项目。感谢您的帮助。谢谢Java 访问被拒绝。找不到文件异常,java,file-io,Java,File Io,我试图阅读的内容的图像文件夹,其中有三个不同的图像。我能够找到文件夹,但它不允许我阅读内容。它给出了一个异常,表示找不到文件访问被拒绝。我更改了自己在C驱动器中本地system for Java文件夹上的访问权限,但问题仍然存在。我读到这个问题,需要提供文件名,但是文件夹的路径已经包含文件名。我做错了什么?如果有什么不同的话,我正在从事一个Maven项目。感谢您的帮助。谢谢 public void getImagesFolder(){ String fileLo
public void getImagesFolder(){
String fileLoc = this.getClass().getResource(IMAGE_FILE).getPath();
int indexIs =fileLoc.indexOf("images/");
String partialPathOfFileLoc = fileLoc.substring(0, indexIs);
// try
// {
// //bufferedReader = new BufferedReader(new FileReader(partialPathOfFileLoc + IMAGE_FILE_WOSLASH));
// bufferedReader = new BufferedReader(new FileReader(fileLoc));
// while((line = bufferedReader.readLine()) != null){
// String imageName = line;
// System.out.println("Image name is: "+ imageName);
// }
// }
// catch (FileNotFoundException e1)
// {
// e1.printStackTrace();
// }
// catch (IOException e)
// {
//
// e.printStackTrace();
// }
File f = new File(fileLoc);
File[] paths;
paths = f.listFiles();
int filesLength =paths.length;
System.out.println("Files length is: "+ filesLength);
for(File path:paths)
{
// prints file and directory paths
System.out.println(path);
}
如果异常消息声称权限被拒绝,则必须首先检查文件的权限是否正确,其次检查文件当前是否被其他应用程序使用。您需要签出的是拒绝访问。应用程序可能没有对文件夹或文件的读取权限。请尝试目录中的.listFiles,看看有什么可用。如果您位于正确的位置,但没有看到要查找的文件,请检查应用程序的权限,以确保它可以读取/写入文件夹。根据@Sh4d0wsPlyr的建议,我尝试运行一段代码。请看我上面的编辑。但请注意,我是使用File而不是BufferedReader运行代码的。为什么BufferedReader的FileReader无法找到文件,而file却能够找到?根据@Saket Mittal给出的答案,您是否可以在其他地方打开该文件?如果您使用的是BufferedReader,但文件已打开/etc,则可能会拒绝您的权限。除此之外,据我所知,这两者之间应该没有明显区别。@Saket Mittal,包含图像文件的文件夹已关闭。另外,我认为如果文件是打开的,File对象也会抱怨,但在这种情况下不会抛出异常。