代码找不到我的文件

时间:2013-05-01 17:04:54

标签: java file

我写了一个简短的程序,它会找到我制作的文件并打印一些细节。它执行正常,但它无法检测文件大小或是否隐藏。 E.G。

file path: C:\temp\filetext.txt last modified: 0 file size: 0 Is file hidden?false

该文件确实存在于C上的临时文件夹中。我不确定问题是什么

public void Q1()
{
    String fileName = "filetext.txt";
    getFileDetails(fileName);
}

public void getFileDetails(String fileName)
{
    String dirName = "C:/temp/";
    File productsFile = new File(dirName + fileName);
    long size = productsFile.length();
    System.out.println("file path: " + productsFile.getAbsolutePath() + " last modified: " + productsFile.lastModified() + " file size: " + productsFile.length() + " Is file hidden?" + productsFile.isHidden());
}

1 个答案:

答案 0 :(得分:2)

文件不需要物理文件。因此,即使它所代表的物理文件不存在/无法找到,您的File对象也可以存在。检查JavaDoc是否为length()lastModified(),如果文件不存在,它们都返回0L。因此,在调用其他方法之前,请确保将File对象链接到文件系统上的现有文件,方法是调用file.exists()