zoukankan      html  css  js  c++  java
  • Java中的目录操作

    创建目录:

    File类中有两个方法可以用来创建文件夹:

    • mkdir( )方法创建一个文件夹,成功则返回true,失败则返回false。失败表明File对象指定的路径已经存在,或者由于整个路径还不存在,该文件夹不能被创建。
    • mkdirs()方法创建一个文件夹和它的所有父文件夹。
    import java.io.File;
     
    public class CreateDir {
        public static void main(String args[]) {
            String dirname = "/tmp/user/java/bin";
            File d = new File(dirname);
            // 现在创建目录
            d.mkdirs();
        }
    }

    读取目录

    一个目录其实就是一个 File 对象,它包含其他文件和文件夹。

    如果创建一个 File 对象并且它是一个目录,那么调用 isDirectory() 方法会返回 true。

    可以通过调用该对象上的 list() 方法,来提取它包含的文件和文件夹的列表。

    下面展示的例子说明如何使用 list() 方法来检查一个文件夹中包含的内容:

    import java.io.File;
     
    public class DirList {
        public static void main(String args[]) {
            String dirname = "/tmp";
            File f1 = new File(dirname);
            if (f1.isDirectory()) {
                System.out.println("目录 " + dirname);
                String s[] = f1.list();
                for (int i = 0; i < s.length; i++) {
                    File f = new File(dirname + "/" + s[i]);
                    if (f.isDirectory()) {
                        System.out.println(s[i] + " 是一个目录");
                    } else {
                        System.out.println(s[i] + " 是一个文件");
                    }
                }
            } else {
                System.out.println(dirname + " 不是一个目录");
            }
        }
    }

    删除目录或文件

    删除文件可以使用 java.io.File.delete() 方法。

    以下代码会删除目录 /tmp/java/,需要注意的是当删除某一目录时,必须保证该目录下没有其他文件才能正确删除,否则将删除失败。

    import java.io.File;
     
    public class DeleteFileDemo {
        public static void main(String args[]) {
            // 这里修改为自己的测试目录
            File folder = new File("/tmp/java/");
            deleteFolder(folder);
        }
     
        // 删除文件及目录
        public static void deleteFolder(File folder) {
            File[] files = folder.listFiles();
            if (files != null) {
                for (File f : files) {
                    if (f.isDirectory()) {
                        deleteFolder(f);
                    } else {
                        f.delete();
                    }
                }
            }
            folder.delete();
        }
    }

    参考资料

    菜鸟教程

  • 相关阅读:
    又开始写代码了
    C# 调用office 2007 及 SaveAsPDFandXPS.exe 将Word、Excel、PPT转换为PDF文件
    64位机子上未能加载集
    在 vs 2003 转 2008 时WEB项目不能转换
    【第一弹】测试小学生,终于有博客了
    RobotFramwork + Appium+ Andriod 环境搭建
    写webpart
    backup
    获取MOSS当前登录用户信息
    rotate with different image(轮换显示图片)
  • 原文地址:https://www.cnblogs.com/xumaomao/p/12818777.html
Copyright © 2011-2022 走看看