1
我有一個java.io.File
對象,我不知道它與哪個對應。使用isDirectory()
方法,我們可以檢查它是否是一個目錄。一個普通的文件夾和一個驅動器都會在撥打isDirectory()
後返回true如何知道文件是代表根還是我的電腦?
如何檢查File
對象是驅動器還是我的電腦?
我有一個java.io.File
對象,我不知道它與哪個對應。使用isDirectory()
方法,我們可以檢查它是否是一個目錄。一個普通的文件夾和一個驅動器都會在撥打isDirectory()
後返回true如何知道文件是代表根還是我的電腦?
如何檢查File
對象是驅動器還是我的電腦?
有兩種方式,一種是
File f=new File("C:\\");
if(f.toPath().getNameCount()==0) System.out.println(f+" is root");
getNameCount()
方法返回無。的給定File
toPath()
方法返回java.nio.file.Path
對象爲f
。還有一件事,你甚至不需要在這裏輸入java.nio.file
包。
例如,如果f=new File("C:\\Program Files");
那麼這因爲只有一個根是C:\\
驅動得到的名稱計數返回1 0
我的電腦不能表示爲File
目的。如果你嘗試這樣做,
File f=new File("C:\\").getParentFile();
你null
另一種方式是(我不推薦)。在這裏我們將不得不使用循環,從性能的角度來看,它會降低性能,同時這也很漫長。
File[] files=File.listRoots();
for(int i=0;i<files.length;i++)
{
if(files[i].equals(f)){
System.out.println(f+" is root");
break;
}
}