Java File基本方法使用

版权声明:ByRisonBoy https://blog.csdn.net/Rison_Li/article/details/83308827

1、查看磁盘空间大小

代码片段:

public class Main {
	//getFreeSpace()查看可用空间
	public static void main(String[] args) {
		File file = new File("E:");
		long space = file.getFreeSpace();
		System.out.println("可用空间:" + space);
	}

}

显示结果:

可用空间:48155090944

2、判断某文件是否是目录

代码片段:

public class Main {
	//isDirectory()判断文件是否是目录
	public static void main(String[] args) {
	     File file = new File("F:\\BaiduYunDownload");
	     boolean isDirectory = file.isDirectory();
	     System.out.println(isDirectory);
	}

}

显示结果:

true

3、判断文件夹是否存在

扫描二维码关注公众号,回复: 4082018 查看本文章

代码片段:

public class Main {
	//exists判断文件夹是否是存在
	public static void main(String[] args) {
	     File file = new File("F:\\BaiduYunDownload");
	     boolean exists  = file.exists();
	     System.out.println(exists);
	}

}

结果显示:

true

4、获取文件创建时间

代码片段:

public class Main {
	//lastModified获取文件创建时间
	public static void main(String[] args) {
	     File file = new File("F:\\book.xml");
 	     long lastModified  = file.lastModified();
	     System.out.println(lastModified);
	}
}

结果显示:

1529474874639

5、getTotalSpace()获取目录的所有空间

代码片段:

public class Main {
	//getTotalSpace()获取目录的所有空间
	public static void main(String[] args) {
	     File file = new File("F:");
 	     long space  = file.getTotalSpace();
	     System.out.println(space);
	}
}

结果显示:

142368096256

6、获得文件/文件夹的绝对路径

代码片段:

public class Main {
	//getAbsolutePath()获取文件/文件夹的绝对路径
	public static void main(String[] args) {
	     File file = new File("F:\\DB_CarManagement\\src");
 	     String path = file.getAbsolutePath();
	     System.out.println(path);
	}
}

结果显示:

F:\DB_CarManagement\src

7、判断是否为文件

代码片段:

public class Main {
	//isFile()判断是否是文件
	public static void main(String[] args) {
	     File file = new File("F:\\DB_CarManagement\\src\\xieyi.txt");
 	     boolean isFile = file.isFile();
	     System.out.println(isFile);
	}
}

结果显示:

true

8、文件重命名

代码片段:

public class Main {
	//renameTo()重命名
	public static void main(String[] args) {
	     File file = new File("F:\\DB_CarManagement\\src\\xieyi.txt");
 	     file.renameTo(new File("F:\\DB_CarManagement\\src\\xie.txt"));
	     // System.out.println(isFile);
	}
}

结果显示:

9、创建单级目录

代码片段:

import java.io.File;
public class Main {
	//mkdir()创建单级目录
	public static void main(String[] args) {
	     File file = new File("F:/usr");
	     file.mkdir();
	}
}

结果显示:

10、创建多级目录
代码片段:

public class Main {
	//mkdirs()创建多级目录
	public static void main(String[] args) {
	     File file = new File("F:/usr/local/file");
	     file.mkdirs();
	}
}

结果显示:

11、createNewFile创建文件

代码片段:

import java.io.File;
import java.io.IOException;
public class Main {
	//createNewFile()创建文件
	public static void main(String[] args) throws IOException {
	     File file = new File("F:/usr/local/file.txt");
	     file.createNewFile();
	}
}

结果显示:

12、获取系统临时文件目录

代码片段:

import java.io.File;
import java.io.IOException;
import java.util.UUID;
public class Main {
	public static void main(String[] args) throws IOException {
	    String fileName = UUID.randomUUID().toString();
	    File file = File.createTempFile(fileName, "txt");
	    System.out.println(file.getAbsolutePath());
	}
}

结果显示:

13、deleteOnExit删除目录/文件

代码片段:

import java.io.File;
import java.io.IOException;
public class Main {
	public static void main(String[] args) throws IOException {
	    File file = new File("F:\\usr\\local\\file.txt");
	    if(file.exists()) {
	    	System.out.println("file.txt文件存在!");
	    	file.deleteOnExit();
	    	System.out.println("file.txt文件是否存在:" + file.exists());
	    }   
	}
}

结果显示:

仔细的同学就注意到了,为甚么删除了,文件还是true?

其实,当调用deleteOnExit()方法时,只是相当于对deleteOnExit()作一个声明,当程序运行结束,JVM终止时才真正调用deleteOnExit()方法实现删除操作。即该方法是将删除的命令缓存了一下,到服务停止的时候再进行操作!

14、File.separator获得当前操作系统的文件分隔符

代码片段:

import java.io.File;
import java.io.IOException;
public class Main {
	public static void main(String[] args) throws IOException {
		String separator = File.separator;
		System.out.println(separator);
	}
}

结果显示:

\
在linux文件分隔符是/,在windows下文件的分隔符\,但是在java中\是转义字符,如果要在windows中运行java程序,分隔符需要用\\;但是/分隔符所有的操作系统都识别。

15、list遍历当前目录下所有文件夹和文件

代码片段:

import java.io.File;
import java.io.IOException;
public class Main {
	public static void main(String[] args) throws IOException {
		File file = new  File("F:\\usr\\local\\file");
		String[] fileBox = file.list();
		for(String fileName : fileBox) {
			System.out.println(fileName);
		}
	}
}

结果显示:

16、FilenameFilter文件/文件夹过滤

代码显示:

import java.io.File;
import java.io.FilenameFilter;
import java.io.IOException;
import java.util.Arrays;
public class Main {
	public static void main(String[] args) throws IOException {
		File file = new  File("F:\\usr\\local\\file");
		String[] fileBox = file.list(new FilenameFilter() {		
			@Override
			public boolean accept(File dir, String name) {
				// TODO Auto-generated method stub
				if(name.endsWith("txt")) {
					return true;
				}
				return false;
			}
		});
		System.out.println(Arrays.toString(fileBox));
	}
}

结果显示:

只是显示后缀为txt的文件。

17、getName获得文件夹/文件名字

代码显示:

import java.io.File;
import java.io.IOException;
public class Main {
	public static void main(String[] args) throws IOException {
		File file = new  File("F:\\usr\\local\\file\\myfile.txt");
	    String fileName = file.getName();
	    System.out.println(fileName);
	}
}

结果显示:

18、getParentFile获取父文件夹

代码片段:

import java.io.File;
import java.io.IOException;
public class Main {
	public static void main(String[] args) throws IOException {
		File file = new  File("F:\\usr\\local\\file\\myfile.txt");
	    File fileName = file.getParentFile();
	    System.out.println(fileName.getName());
	}
}

结果显示:

19、length获取文件大小

代码片段:

import java.io.File;
import java.io.IOException;
public class Main {
	public static void main(String[] args) throws IOException {
		File file = new  File("F:\\usr\\local\\file\\myfile.txt");
	    long size = file.length();
	    System.out.println(size);
	}
}

结果显示:

16

猜你喜欢

转载自blog.csdn.net/Rison_Li/article/details/83308827