使用File类创建文件进行遍历

File类是java.io包下代表与平台无关的文件和目录的类,当程序想操作文件的时候,都可以通过File类来完成。File类能对文件进行新建、删除和重命名文件。但是File类不能访问文件内容本身。如果需要访问文件内容本身,则需要使用输入/输出流。
创建文件:
创建一个文件路径,判断文件是否存在exists()和判断是否是目录isDirectory(),如果是则创建此抽象路径名指定的目录mkdir()。

File file = new File("E:/java.txt");
	if (!file.exists()||!file.isDirectory()) {
		System.out.println(file.mkdir());	}

结果:在这里插入图片描述
判断文件是否可以读写执行:

		System.out.println("是否可写:"+ file.canWrite());
		System.out.println("是否可读:"+ file.canRead());
		System.out.println("是否可执行:"+ file.canExecute());
		System.out.println("是否是文件:"+ file.isFile());
		System.out.println("是否是绝对路径:"+ file.isAbsolute());
		System.out.println("是否可写:"+ file.canWrite());
		System.out.println("是否隐藏:"+ file.isHidden());

结果:使用File类创建文件进行遍历_第1张图片
获取文件信息:

System.out.println("文件大小:" + file.length());
System.out.println("文件最后修改时间:" + file.lastModified());

结果:在这里插入图片描述
重命名文件:

file.renameTo(new File("E:/java22.txt"));

结果:
在这里插入图片描述
删除文件:

file.delete();

遍历文件目录:
一个方法获取文件和文件数的参数。

public static void PrintDirectory(File file,int count) {

判断文件是否存在:

if (file.exists()) {

生成缓冲区,缓存传过来的参数值:
StringBuffer buffer = new StringBuffer();
判断文件值是否为零:
if (count != 0) {
buffer.append("@"); }
遍历出文件数值:

for (int i = 0; i < count; i++) {
		buffer.append("=");		}

判断是否是目录,如果是则拼接中括号,新建抽象路径数组,遍历文件名:

if (file.isDirectory()) {
System.out.println(buffer.toString()+"[" + file.getName() + "]");
				File[] files = file.listFiles();
			for (File file2 : files) {
		 	  PrintDirectory(file2, count+1);	
}	
}

如果不是则返回文件名:

else {	System.out.println(buffer.toString()+ ">" + file.getName());	}

最后在方法体中,输入遍历的目录对象,调用方法:

public static void main(String[] args) throws IOException {
			File file = new File("E:/java22.txt");
		PrintDirectory(file,0);
}

结果视图:
使用File类创建文件进行遍历_第2张图片使用File类创建文件进行遍历_第3张图片

你可能感兴趣的:(JAVA)