Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/306.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用Java查找文件_Java - Fatal编程技术网

使用Java查找文件

使用Java查找文件,java,Java,我第一次使用File类,有点困惑 我编写了以下基本代码,以查看是否可以检测到桌面上的文件: public static void main(String[]args){ File test= new File("abc.pdf"); if(test.exists()==true){ System.out.println("got it!"); } else{System.out.println("try again");} } 我知道我错过了一大

我第一次使用File类,有点困惑

我编写了以下基本代码,以查看是否可以检测到桌面上的文件:

public static void main(String[]args){
    File test= new File("abc.pdf");
    if(test.exists()==true){
        System.out.println("got it!");
    }
    else{System.out.println("try again");}
}

我知道我错过了一大步,因为程序似乎无法检测到它。有人能告诉我还需要查什么吗?谢谢。

如果您在Eclipse中运行此程序,它将在项目文件夹中查找该文件

如果从命令行运行此命令,它将在当前文件夹中查找

如果您是从一个jar文件运行它,它将在包含jar文件的文件夹中查找,至少在Windows上是这样


如果你在其他地方运行这个,这取决于你如何运行它。在大多数IDE中,它将是项目文件夹。

您需要指定绝对路径。e、 g:

File file = new File("C:\\abcfolder\\abc.pdf");
要获取桌面绝对路径,请执行以下操作:

String desktopPath = WindowsUtils.getCurrentUserDesktopPath();
然后:


太好了,它很管用。谢谢如果我想检查一个文件,但不一定知道它的位置,您是否知道java库中内置的某种搜索方法?@user2910237您可以查看commons.io中的DirectoryWalker:它使您能够遍历文件层次结构,并对指定的文件执行某些操作。顺便说一句,如果你在Java中学习IO,那么现在是查看commons.IO的绝佳时机,它是非常有用的东西;)
File file = new File(desktopPath+"\\abc.pdf");