統計ファイル
タスク:1.フォルダの下にあるすべての標準ファイルの数を統計します.2.フォルダタイプ、場所、サイズ、含まれるファイルとフォルダの数を統計します.最後の変更時間、読み取り専用かどうか、非表示かどうか
package sj.FileDemo_v2;
import java.io.File;
/**
*
* @author Timmy
*
*/
public class FileDtil {
static int countF = 0;
static int result = 0;
public static void main(String[] args) {
String p = "D:\\Program Files\\Java";
cFile(p);
System.out.println(" "+result+" ");
System.out.println(" "+countF+" ");
}
/**
*
*
* @param path =>
* @return =>
*/
public static void cFile(String path) {
//
File file = new File(path);
//
if (!file.exists()) {
System.out.println(" ");
return;
}
// ,
File[] fs = file.listFiles();
// fs null
if (fs == null) {
System.out.println(" ");
return;
}
// , 3
for (int i = 0; i < fs.length; i++) {
File f = fs[i];
//
String str = f.getAbsolutePath();
if(f.isFile()) {
System.out.println(" "+str);
//
String s = f.getParent();
System.out.println(" “"+s+"” ");
// 、
long l = f.length();
long t = f.lastModified();
System.out.println(" :"+l+" ");
System.out.println(" :"+t);
// 、
boolean bRead = f.canRead();
boolean bHidden = f.isHidden();
if (bRead) {
System.out.println(" ");
} else {
System.out.println(" ");
}
if (bHidden) {
System.out.println(" ");
} else {
System.out.println(" ");
}
System.out.println("*************************************");
result++;
} else if(f.isDirectory()) {
countF++;
cFile(str);
}
}
}
}