Java技能点--目录增删改查操作

点此查看全部文字教程、视频教程、源代码

1. 相关类库

Java中为目录和文件建立的相关类库都是File,相当于统一建模了,不过说实话确实差不多,把目录视为一种特殊文件就是了。

常见的目录操作,无非就是新增、删除、重命名、查询子目录,我们编写一个工具类。

2. 目录操作工具类

代码如下:

/**
 1. 目录操作工具类
 */
public class DirectoryUtils {
	/**
	 * 创建目录
	 */
	public static boolean createDirectory(String path) {
		File dir = new File(path);
		return dir.mkdir();
	}

	/**
	 * 删除目录
	 */
	public static boolean deleteDirectory(String path) {
		File dir = new File(path);
		return dir.delete();
	}

	/**
	 * 重命名目录
	 */
	public static boolean renameDirectory(String oldPath, String newPath) {
		File dir = new File(oldPath);
		return dir.renameTo(new File(newPath));
	}

	/**
	 * 列出子目录信息
	 */
	public static File[] getChildrenDirectories(String path) {
		File dir = new File(path);
		return dir.listFiles();
	}

	/**
	 * 测试
	 */
	public static void main(String[] args) throws IOException, InterruptedException {
		// 新增目录测试
		DirectoryUtils.createDirectory("D:/dir");
		DirectoryUtils.createDirectory("D:/dir/dir1");
		DirectoryUtils.createDirectory("D:/dir/dir2");
		DirectoryUtils.createDirectory("D:/dir/dir3");
		// 重命名测试
		DirectoryUtils.renameDirectory("D:/dir/dir1", "D:/dir/dir_1");
		DirectoryUtils.renameDirectory("D:/dir/dir2", "D:/dir/dir_2");
		// 删除测试
		DirectoryUtils.deleteDirectory("D:/dir/dir3");
		// 列出子目录
		File[] files = DirectoryUtils.getChildrenDirectories("D:/dir");
		for (File file : files) {
			System.out.println(file.getName());
		}
	}
}

3. 代码解释

有几个点需要注意:

  1. 如果父目录不存在,直接创建子目录会返回false,例如如果不存在D:/dir,直接创建D:/dir/dir1会失败。
  2. 可以使用/作为平台无关的路径分隔符,直接Windows等平台
  3. 也可以使用\\作为Windows平台的路径风格符,此时第一个反斜线是转义字符。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序员大阳

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值