您的位置:首页 > 其它

(12)获取文件信息

2014-03-12 21:32 155 查看
package com.xuan.file;

import java.io.File;
import java.io.IOException;
import java.util.Date;

/*想了解给定文件的所有信息*/
public class GetFileInfo {
	public static void main(String[] argv)throws IOException {
		//确保参数argv[0]是文件名
		if(argv.length==0){
			System.err.println("Usage:Status filename");
			System.exit(1);
		}
		for(int i=0;i<argv.length;i++){
			status(argv[i]);
		}
	}
	public static void status(String fileName)throws IOException{
		System.out.println("---"+fileName+"---");
		//根据给定文件,构造File对象
		File f=new File(fileName);
		
		//确定文件是否存在
		if(!f.exists()){
			System.out.println("file not found");
			System.out.println();//空行
			return;
		}
		//打印全名(路径名+文件名)
		System.out.println("Canonical name "+f.getCanonicalPath());
		//如果可能,打印父目录
		String p=f.getParent();
		if(p!=null){
			System.out.println("Parent directory:"+p);
		}
		
		//检查文件是否可读
		if(f.canRead()){
			System.out.println("File is readable.");
		}
		//检查文件是否可写
		if(f.canWrite()){
			System.out.println("File is writable.");
		}
		
		//报告更新时间
		Date d=new Date();
		d.setTime(f.lastModified());
		System.out.println("Last modified"+d);
		
		
		//检查是文件,还是目录,或者两者都不是;如果是文件,打印文件大小
		if(f.isFile()){
			//报告文件大小
			System.out.println("File size is "+f.length()+" bytes.");
		}else if(f.isDirectory()){
			System.out.println("It's a directory");
		}else{
			System.out.println("I dunno! Neither a file nor a directory!");
		}
		System.out.println();//空格
	}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: