任务描述
本关任务:输出给定目录下的最大文件和最小文件名以及它们的文件大小。
编程要求
仔细阅读右侧编辑区内给出的代码框架及注释,在 Begin-End 间编写程序代码,输出给定目录下的最大文件和最小文件名,具体要求如下:
- 接收给定字符串(如:/test);
- 输出给定目录下的最大文件和最小文件名以及它们的文件大小(不考虑子目录)。
import java.io.*;
import java.util.Arrays;
import java.util.Scanner;
public class FileTest {
public static void main(String[] args) throws IOException {
// 请在Begin-End间编写完整代码
/********** Begin **********/
// 接收给定字符串(目录)
Scanner input = new Scanner(System.in);
String str = input.next();
// 遍历目录,输出最小文件和最大文件名以及它们的大小
File file = new File(str);
String Max = null;
String Min = null;
long max = 0;
long min = 100;
File[] list = file.listFiles();
for (int i = 0;i < list.length;i ++){
if (list[i].isFile() & list[i].length() > max & list[i].length() > 0){
Max = list[i].getName();
max = list[i].length();
}
if(list[i].isFile() & list[i].length() < min & list[i].length() > 0){
Min = list[i].getName();
min = list[i].length();
}
}
System.out.println("最大的文件是" + Max + ","+"其大小是" + max + "字节");
System.out.println("最小的文件是" + Min + ","+"其大小是" + min + "字节");
/********** End **********/
}
}