获取文件的属性信息
知识点:
通过java.io.File类可以获取文件的属性信息,使用File类的关键点如下:
1、相对路径:相对路径就是指由这个文件所在的路径引起的跟其它文件(或文件夹)的路径关系。如:“./temp/xx.txt"将指向当前目录的temp子目录下的xx.txt文件。
2、绝对路径:文件的真是路径。如Linux操作系统下的"/usr/java/xx.sh",Windows下的"c:/temp/xx.txt"。
3、File类的构造方法的参数可以是文件的相对路径,也可以是文件的绝对路径,它被当作File对象的抽象路径。
4、File类的getName方法获得文件名,该文件名不包含路径信息
5、File类的getPath方法把抽象路径中的文件分隔符用系统默认文件分隔符替换后返回。windows下的系统默认文件分隔符是“\”,linux和UNIX下默认文件分隔符是“/"
6、File类的getAbsolutePath方法获得文件的绝对路径
7、File类的isAbsolute方法判断File对象的抽象路径是否为绝对路径
8、File类的toURI方法获得File对象的URI,以”file:“协议开头
9、File对象可以指向一个目录,isDirectory方法返回它是否指向目录,isFile方法返回它是否指向一个具体文件。
10、File对象指向的文件可以不存在,exists方法返回它指向的文件是否存在
实例演示
package book.io;
import java.io.File;
import java.util.Date;
/** *//**
* 获取文件的基本信息
* @author joe
*
*/
public class GetFileInfos ...{
public static void println(String s) ...{
System.out.println(s);
}
public static void main(String[] args) ...{
//用文件路径新建一个文件对象。路径可以是绝对路径也可以是相对路径
//传入的参数被当做为文件的抽象路径
File file = new File("D:/work/newTemp.txt");
println("文件名: " + file.getName()); //获取文件的名字,不包括路径
//将抽象路径中的文件分隔符系统默认分隔符替换
println("文件路径: " + file.getPath());
println("绝对路径: " + file.getAbsolutePath()); //获取文件的绝对路径
println("父目录: " + file.getParent()); //获取抽象路径名的父抽象路径名
println("文件是否存在: " + file.exists());
println("是否可读: " + file.canRead());
println("是否可写: " + file.canWrite());
println("是否是隐藏文件: " + file.isHidden());
println("是否是普通文件: " + file.isFile());
println("是否是文件目录: " + file.isDirectory());
println("文件路径是否是绝对路径: " + file.isAbsolute());
println("文件路径的URI: " + file.toURI());
println("文件最后修改时间: " + new Date(file.lastModified()));
println("文件大小: " + file.length() + "bytes");
println("是否可执行:"+file.canExecute());
}
}
输出结果:
文件名: newTemp.txt
文件路径: D:work ewTemp.txt
绝对路径: D:work ewTemp.txt
父目录: D:work
文件是否存在: true
是否可读: true
是否可写: true
是否是隐藏文件: false
是否是普通文件: true
是否是文件目录: false
文件路径是否是绝对路径: true
文件路径的URI: file:/D:/work/newTemp.txt
文件最后修改时间: Fri Nov 30 01:37:11 CST 2007
文件大小: 0bytes
是否可执行:true
文章出处:飞诺网(www.diybl.com):http://www.diybl.com/course/3_program/java/javaxl/20071129/89524.html