import java.io.File;
public
class test {
public static void main(String[] args) {
String str = "E:\\11";
File file = new File(str);
System.out.println("文件类型是:"+getFiletype(file));//输出文件的类型
System.out.println("文件的位置是:"+file.getAbsolutePath());//输出文件的位置
System.out.println("文件的大小是:"+getFileweight(file));//输出文件的大小
System.out.println("文件中标准文件的个数为:"+getFileNum(file));//输出文件中的标准文件个数
System.out.println("文件中文件夹的个数为:"+getDicNum(file));//输出文件中文件夹的个数
System.out.println("文件最后一次修改时间为:"+file.lastModified());//输出文件的最后修改时间
System.out.println("文件是否只读:"+file.
canRead());
}
/**
* 得到文件的类型
* @param file 要进行操作的文件对象
* @return 返回是否为字符串
*/
public static String getFiletype(File file){
String Filetype;
if(file.isFile()){
Filetype = "标准文件";
}else if(file.isDirectory()){
Filetype = "文件夹";
}else{
Filetype = "不是标准文件也不是文件夹";
}
return Filetype;
}
/**
*
获取文件的大小
* @param file 要进行操作的文件对象
* @return 返回文件的大小
*/
public static long getFileweight(File file){
long weight = 0;
File[] fs = file.listFiles();
if(fs==null){
System.out.println("给定的文件不是一个文件夹");
return 0;
}
for(int i = 0;i<fs.length;i++){
if(!fs[i].isDirectory()){
weight = weight+fs[i].length();
}else{
File f = fs[i].getAbsoluteFile();
weight = weight+getFileweight(f);
}
}
return weight;
}
/**
* 获得文件中标准文件的个数
* @param file 操作的文件对象
* @return 标准文件的个数
*/
public static int getFileNum(File file){
int Num = 0;
File[] fs = file.listFiles();
if(fs==null){
return 0;
}
for(int i = 0;i<fs.length;i++){
if(fs[i].isFile()){
Num++;
}
}
return Num;
}
/**
* 获得文件中文件夹的个数
* @param file 操作的文件对象
* @return 文件夹的个数
*/
public static int getDicNum(File file){
int Num = 0;
File[] fs = file.listFiles();
if(fs==null){
return 0;
}
for(int i = 0;i<fs.length;i++){
if(fs[i].isDirectory()){
Num++;
}
}
return Num;
}
}