Java 读取文件夹并提供文件夹中所有文件的详细信息
我得到了一个程序,该程序应该读取给定文件夹中的所有文件,并给出文件详细信息,如文件名、文件大小、创建日期和时间、文件位置作为输出。如果给定文件夹中有任何子文件夹,那么它也应该提供该子文件夹中存在的文件的详细信息。标准Java库中有一个用于此的API。您的问题是什么?您可以使用File.list方法查看Java 读取文件夹并提供文件夹中所有文件的详细信息,java,Java,我得到了一个程序,该程序应该读取给定文件夹中的所有文件,并给出文件详细信息,如文件名、文件大小、创建日期和时间、文件位置作为输出。如果给定文件夹中有任何子文件夹,那么它也应该提供该子文件夹中存在的文件的详细信息。标准Java库中有一个用于此的API。您的问题是什么?您可以使用File.list方法查看 package FileDetails; import java.io.*; import java.nio.file.*; import java.nio.file.attribute.*;`
package FileDetails;
import java.io.*;
import java.nio.file.*;
import java.nio.file.attribute.*;``
public class FileDetails
{
public static void filelist(final File folder) throws IOException
{
for (final File fileEntry : folder.listFiles())
{
if(fileEntry.isDirectory())
{
filelist(fileEntry);
}
else
{
//To get file name
System.out.println("File name is : " + fileEntry.getName());
//To get file extension
String fileName = fileEntry.getName();
if(fileName.lastIndexOf(".") != -1 && fileName.lastIndexOf(".") != 0)
{
System.out.println("Extension of file is : " + fileName.substring(fileName.lastIndexOf(".")+1));
}
//To get file size
double bytes = fileEntry.length();
double kilobytes = (bytes / 1024);
System.out.println("Size of the file is : " + kilobytes + " KB");
//To get file times
Path path = fileEntry.toPath();
BasicFileAttributes attr = Files.readAttributes(path,BasicFileAttributes.class);
System.out.println("Creation time : " + attr.creationTime());
System.out.println("Last Access time : " + attr.lastAccessTime());
System.out.println("Last Modified time : " + attr.lastModifiedTime() + "\n\n");
}
}
}
public static void main(String[] arg) throws IOException
{
final File folder = new File("folder location");
filelist(folder);
}
}