当前位置: 首页 > article >正文

Java学习,目录是否为空

Java 要判断一个目录是否为空,可以使用java.nio.file包中Files和 Paths类来遍历目录内容,如果目录没有任何文件或子目录,那么它就是空的。

使用java.nio.file中Files与Paths:
import java.nio.file.*;
import java.io.IOException;
 
public class CheckEmptyDirectory {
    public static void main(String[] args) {
        // 要检查的目录路径
        Path directoryPath = Paths.get("path/to/directory");
 
        try {
            // 检查目录是否为空
            boolean isEmpty = isDirectoryEmpty(directoryPath); 
            // 输出结果
            if (isEmpty) {
                System.out.println("目录是空的: " + directoryPath);
            } else {
                System.out.println("目录不是空的: " + directoryPath);
            }
        } catch (IOException e) {
            // 处理异常
            System.err.println("检查目录时出错: " + e.getMessage());
        }
    }
 
    /**
     * 判断目录是否为空
     *
     * @param dir 要检查的目录
     * @return 如果目录为空,则返回 true;否则返回 false
     * @throws IOException 如果在访问目录时发生 I/O 错误
     */
    public static boolean isDirectoryEmpty(Path dir) throws IOException {
        try (DirectoryStream<Path> stream = Files.newDirectoryStream(dir)) {
            return !stream.iterator().hasNext();
        }
    }
}

使用java.io.File进行判断:

import java.io.File; 
public class Main
{
    public static void main(String[] args)
    {
        File file = new File("./testdir");  // 当前目录下testdir
        if(file.isDirectory()){
            if(file.list().length>0){
                System.out.println("目录不为空!");
            }else{
                System.out.println("目录为空!");
            }
        }else{
            System.out.println("这不是一个目录!");
        }
    }
}

 


http://www.kler.cn/a/465208.html

相关文章:

  • 大数据面试笔试宝典之大数据运维面试
  • 《Rust权威指南》学习笔记(三)
  • 计算机网络基础(7)中科大郑铨老师笔记
  • Flink源码编译与运行
  • TI毫米波雷达原始数据解析之Lane数据交换
  • 域上的多项式环,整除,相通,互质
  • PyTorch到C++再到 CUDA 的调用链(C++ ATen 层) :以torch._amp_update_scale_调用为例
  • 初学stm32 --- IO口模拟8080驱动LCD屏
  • 1 数据库(终):数据库管理员(数据可的备份与、DCL_管理用户)
  • STLG_01_05_程序设计C语言 - 数据类型概念解析
  • QT:控件属性及常用控件(1)------核心控件及属性
  • FortiAl为擎重塑网络与安全运营未来
  • k8s基础(1)—Kubernetes-Pod
  • 如何在2025年创建一个网站:使用US Domain Center和WordPress的终极指南
  • 玉米中的元基因调控网络突出了功能上相关的调控相互作用。\functions.R
  • 今日自动化编辑部今日自动化杂志社2024年第19期部分目录
  • 物联网控制期末复习
  • 嵌入式驱动开发详解9(platform驱动)
  • 实践:事件循环
  • STM32入门教程(CAN通信篇)
  • (leetcode算法题)​122. 买卖股票的最佳时机 II​ 和 123. 买卖股票的最佳时机 III
  • PostgreSQL-01-入门篇-简介
  • Redis数据库——数据结构类型
  • 基于16QAM的载波同步和定时同步性能仿真,采用四倍采样,包括Costas环和gardner环
  • tiny RISCV项目学习
  • 系统设计——大文件传输方案设计