Java.io.File.length()返回0

Pro*_*nça 10 java file

我正在为ftp文件传输做一个applet,我需要知道本地文件的大小(下载简历).问题是File.length()返回0.

该文件存在(使用File.exists()检查),并且具有超过0个字节(至少在Windows中).

我不知道在哪里寻找为什么length()返回0.

这是代码和结果的一部分.

long fileOffset = 0;

if(localfile.exists()){
    fileOffset = localfile.length();
    System.out.println("The file " + localfile.getAbsolutePath() + " has " + localfile.length() +" in size");
    System.out.println("Resume at: " + fileOffset);
    outputStream.skip(fileOffset);
    ftp.setRestartOffset(fileOffset);
    count = fileOffset;
}
Run Code Online (Sandbox Code Playgroud)

控制台的结果是:

The file D:\test\About Downloads.pdf has 0 in size
Resume at: 0
Run Code Online (Sandbox Code Playgroud)

谢谢

Ern*_*ill 9

变量"outputStream"的存在表明,此时,您可能已经打开了要写入的文件,并且在此过程中,您已将其截断.尝试在实际打开文件之前计算大小?