java使用File类创建一个文件和遍历文件目录实例

java使用File类创建一个文件

这个类的用处只涉及到文件的创建。修改和删除,并不对文件内部的内容进行其他操作。

public class F {
	public static void main(String[] args) {
		File file = new File("E:"+File.separator+"text.txt");
		if (file.exists()) {
			file.delete();
		}else {
			try {
				file.createNewFile();
			} catch (IOException e) {
				e.printStackTrace(); 
			}
		}
	}
}

结果:
在这里插入图片描述
以上操作是针对文件的建立与删除,从代码可以看出,当文件不存在时,就创建文件,如果文件存在,就删除该文件,由于该操作时有虚拟机间接完成的,所以该操作存在延迟,多线程操作时应该注意。

linux和windows文件路径分隔符是不一样的,这里使用File.separator这个符号代替分隔符可以完美解决。
该代码只有再目录存在的时候才能正常运行,否则会抛出异常,但是多数情况下,需要的目录是不存在的,需要程序自行创建,例如:

File file = new File("E:"+File.separator+"F"+File.separator+"text.txt");

File类中有一个getParentFile()方法,该方法放回创建文件的父路径,也就是该文件的目录,再判断该目录是否存在,不存在则创建目录:
代码修改为如下所示:

public class F {
	public static void main(String[] args) {
		File file = new File("E:"+File.separator+"F"+File.separator+"text.txt");
		if(!file.getParentFile().exists()) {
			file.getParentFile().mkdirs();
		}
		if (file.exists()) {
			file.delete();
		}else {
			try {
				file.createNewFile();
			} catch (IOException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
		}
		

	}
}

java遍历文件目录

如下
显示eclipse的安装目录:

import java.io.File;
public class ReadFile {
	public static void main(String[] args) {
		File file = new File("E:" + File.separator + "java-2019-06" );
		print(file);
	}
	public static void print(File file) {
		if (file.isDirectory()) {
			File[] listFiles = file.listFiles();
			if (listFiles != null) {
				for (int i = 0; i < listFiles.length; i++) {
					print(listFiles[i]);
				}
			}

		}
		System.out.println(file);
	}

原理:
如果目录时可读的,则用递归的方式列出子文件。
根据需要,直接更换File中需要读取的目录路径即可

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值