之前一直是在用File中的绝对路径来创建这个File类对象,但是在今天用File类中用相对路径创建时却发现了一个问题,不知道这个相对路径是相对谁面言的。我的程序是这样的:
packagecom.csmz.niit;
importjava.io.*;
publicclassFileDemo{
publicstaticvoidmain(String[]args)throwsIOException{
try{
Filefile=newFile("test.txt");
System.out.println("文件是否存在:"+file.exists());
}catch(Exceptione){
e.printStackTrace();
}
}
}
我试着把test.txt拷贝在src下与FileDemo.java放在同一个目录下结果还是显示false。后来我也试着把test.txt拷贝在bin生成的.class文件下,结果还是不行。
于是我想到了一个方法:
Filefile=newFile("a.txt");
file.createNewFile();
我创建这样一个文本文件,看到底它创建在哪里。结果跑到源文件下,发现原来这个文件是创建了与.classpath同一目录下,现在终于知道这个相对路径的问题。
更详细的相对路径与绝对路径的问题解释是在
http://www.blogjava.net/zhangchao/archive/2009/04/15/265644.html