Java can';找不到代码错误-尝试打印父目录的名称
和标题一样,我试图打印当前目录和父目录的名称,并打印每个目录的所有文件和目录。代码在当前目录下运行良好 但当我试图打印父目录的名称时,不知何故它只是一个空白 下面是我的代码Java can';找不到代码错误-尝试打印父目录的名称,java,io,Java,Io,和标题一样,我试图打印当前目录和父目录的名称,并打印每个目录的所有文件和目录。代码在当前目录下运行良好 但当我试图打印父目录的名称时,不知何故它只是一个空白 下面是我的代码 import java.io.*; class IOTest2 { public static void printList(File[] list) { for(int i=0; i<list.length; i++) { System.out
import java.io.*;
class IOTest2
{
public static void printList(File[] list)
{
for(int i=0; i<list.length; i++)
{
System.out.print(list[i].getName());
if(list[i].isDirectory())
System.out.println("\t \t DIR");
else
System.out.println("\t \t FILE");
}
}
public static void main(String[] args)
{
String workingDir = System.getProperty("user.dir");
File currentDir = new File(workingDir);
System.out.println("current dir: " + currentDir.getName());
File[] curList = currentDir.listFiles();
printList(curList);
System.out.println("--------------------------");
File parentDir = currentDir.getParentFile();
System.out.println("parent dir: " + parentDir.getName());
File[] parList = parentDir.listFiles();
printList(parList);
}
}
谢谢您的时间:)您当前的目录是
C:\JavaStudy
,但由于C:
是驱动器,因此它不会(如预期的那样)打印出C:\
文件路径。如果希望打印字符串C:\
,而不是:
File parentDir = currentDir.getParentFile();
System.out.println("parent dir: " + parentDir.getName());
只要打电话:
System.out.println("parent dir: " + currentDir.getParent());
或
它总是返回父目录的字符串(如果不存在,则返回null)
在我的机器上,它打印出:
--------------------------
parent dir: C:\
$Recycle.Bin DIR
etc...
“C:\”不是目录名,而是驱动器名。父目录名“C:\JavaStudy”确实是空的。哦!!我不知道,谢谢你!我想我希望会有一个C或其他的…@asdfqwer没问题:D
File parentDir = currentDir.getParentFile();
System.out.println("parent dir: " + parentDir.getAbsolutePath());
--------------------------
parent dir: C:\
$Recycle.Bin DIR
etc...