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()); }