0

ファイルのディレクトリを読みました。すべてのファイルリストを取得しました..しかし、最終更新日に何か問題があります。ファイルの日付が昨日であることを ftp アプリケーションで確認します。

コードの一部は

File file1 = new File(filePath+retFilename);

SimpleDateFormat sdf = new SimpleDateFormat("dd-MM-yyyy h:mm:ss a");
long getModifiedDateTime = file1.lastModified();
java.util.Date fmtModifiedDateTime = new java.util.Date(getModifiedDateTime);                   
String getModifiedDate = sdfDate.format(fmtModifiedDateTime);

変更日は常にエポックを返します。キャッチされた i/o 例外はありません。私のFTPアプリケーションはコアFTPです

もう一つは

long fileSize = file1.length();

ファイル サイズが 0 のようです。最終更新日と関係がありますか?

4

1 に答える 1

1

File.lastModified0Lファイルが存在しないか、なんらかの I/O エラーが発生した場合に返されます。おそらく不適切なファイル アクセス権が含まれます。例外がスローされるのはSecurityManager、リソースへのアクセスが取り消された場合のみです。これは、これを試したときに "01-01-1970" (IMO の日付形式がわかりにくい) と表示される理由である可能性があります。

を呼び出す前に、、、、File.isFileまたはFile.isDirectoryFile.exists使用してみてください。オブジェクトが有効な場所を指していない可能性があります。File.canReadFile.lastModifiedFile

于 2012-07-17T15:28:03.603 に答える