Java的file系统和本地化系统是一套。更具安装的不一样os而不一样。例如在linux中使用stat命令查看文件、文件夹的具体信息java
文件夹 $ stat /home File: ‘/home’ Size: 16 Blocks: 0 IO Block: 4096 directory Device: fd02h/64770d Inode: 128 Links: 3 Access: (0755/drwxr-xr-x) Uid: ( 0/ root) Gid: ( 0/ root) Access: 2015-12-13 11:29:01.142687113 +0800 Modify: 2015-12-10 19:54:40.089728044 +0800 Change: 2015-12-10 19:54:40.089728044 +0800 Birth: - 文件 $ stat VMwareTools-10.0.0-2977863.tar.gz File: ‘VMwareTools-10.0.0-2977863.tar.gz’ Size: 71524872 Blocks: 139704 IO Block: 4096 regular file Device: fd02h/64770d Inode: 175 Links: 1 Access: (0444/-r--r--r--) Uid: ( 1000/ fxl) Gid: ( 1000/ fxl) Access: 2015-12-06 10:47:02.939028461 +0800 Modify: 2015-12-06 10:46:52.035027559 +0800 Change: 2015-12-06 10:46:52.035027559 +0800 Birth: -
java.io.File:java里面的系统文件封装类,和文件数据有关的都会使用到。(压缩是工具,不是文件自己特性)node
a) 路径:文件名(分隔符最后一个字符串)、绝对路径、父路径、linux
b) 判断:为绝对路径、为文件夹、为文件、路径是否为绝对路径、文件(夹)存在工具
c) 大小spa
d) 最后修改时间code
e) 权限设置orm
f) 移动 (须要I/O操做)
字符串
g) 压缩、解压(须要I/O工具类,将文件保存到压缩文件里面的保存文件)get
/* * @see \ :转义字符,后面的字符代码特殊意义 * * @see 这个文件和linux的文件系统差很少 * * @See 1.判断:是否存在、是否为绝对路径、是否为文件夹 * * @see 2.路径:父路径、绝对路径 * * @see 3.时间最后修改时间 * * @see 4.大小 * * @see 5.权限 */ @Test public void getFile() throws IOException { File file2 = new File("d:\\project\\test\\"); File file1 = new File(file2, "1231.txt"); System.out.println(file1.getName()); // 1231.txt System.out.println(file1.getAbsolutePath());// d:\project\test\1231.txt System.out.println(file1.getPath());// d:\project\test\1231.txt System.out.println(file1.getParent());// d:\project\test System.out.println(file1.getParentFile());// d:\project\test System.out.println(file1.exists()); // true System.out.println(file1.isAbsolute());// true System.out.println(file1.isDirectory());// false System.out.println(file1.isFile());// true System.out.println(file1.length());// 687 System.out.println(file1.pathSeparator);// ; System.out.println(file1.canWrite());// false System.out.println(file1.canExecute());// true System.out.println(file1.canRead());// true System.out.println(file1.getCanonicalPath());// D:\project\test\1231.txt System.out.println(file2.getName());// test System.out.println(file2.getAbsolutePath());// d:\project\test System.out.println(file2.getPath());// d:\project\test System.out.println(file2.getParent());// d:\project System.out.println(file2.isAbsolute());// true System.out.println(file2.isDirectory());// true System.out.println(file2.isFile());// false System.out.println(file2.length());// 0 System.out.println(file2.pathSeparator);// ; // lastModified : :1450179913772 : :datetime:2015-12-15 19:45:13 System.out.println("lastModified : :" + file1.lastModified() + " : :datetime:" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date(file1.lastModified()))); // setReadOnly : :true System.out.println("setReadOnly : :" + file1.setReadOnly()); }