Reputation: 127
I know the code below will return the current files or directories in a directory:
import java.io.File;
public class test {
File f = null;
String[] paths;
// create new file
f = new File(".");
// array of files and directory
paths = f.list();
// for each name in the path array
for(String path:paths)
{
// prints filename and directory name
System.out.println(path);
}
}
but I need to return the results like below with file size, last date modified, and filename. I am not seeing how to do this with the File class methods. Any help?
424 May 27 14:09:03 MyCode$1.class
535 May 27 14:09:03 MyCode$2.class
2489 May 27 14:09:03 MyCode.class
4391 May 27 14:08:57 MyCode.java
4323 May 26 14:48:17 MyCode.java~
822 May 26 15:05:12 testcases
Upvotes: 0
Views: 179
Reputation: 347214
File#length
File#lastModified
in milliseconds since the unix epoch, use a DateFormat
to format itFile#getName
For example...
File f = new File(".");
File[] files = f.listFiles();
DateFormat df = new SimpleDateFormat("MMM dd HH:mm:ss");
// for each name in the path array
for (File file : files) {
System.out.printf("%4d %s %s%n", file.length(), df.format(file.lastModified()), file.getName());
}
Which outputs something like...
0 Oct 21 16:05:28 build
3597 Oct 21 16:04:16 build.xml
85 Oct 21 16:04:17 manifest.mf
4096 Oct 21 16:04:16 nbproject
0 Oct 21 16:04:16 src
Upvotes: 3