创建,删除文件或文件夹及判断其是否存在

原创 2015年07月07日 11:21:52
public class FileUtils {
    /**
     * 删除文件夹下的所有文件或者某一个文件
     * @param name 文件名,若为null,删除目录下所有文件
     * @param str
     */
    public static void deleteFile(String name,String... str) {
        try {
            if (! exists(name,str)){
                return;
            }
            File file = createFile(name,str);
            if (!TextUtils.isEmpty(name)){
                file.delete();
                return;
            }
            File[] files = file.listFiles();
            for (int i = 0; i < files.length; i++) {
                if (!files[i].isDirectory()) {
                    files[i].delete();
                }
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

    /**
     * 创建文件夹或者文件
     * @param name 文件名
     * @param str  文件各级目录
     * @return
     */
    public static File createFile(String name, String... str) {
        File folder = new File(getFilePath(str));
        if (!folder.exists()) {
            folder.mkdirs();
        }
        return TextUtils.isEmpty(name) ? folder : new File(folder, name);
    }

    /**
     * 判断文件夹或者文件是否存在
     * @param name 文件名
     * @param str  文件各级目录
     */
    public static boolean exists(String name,String... str){
        String path = getFilePath(str);
        return TextUtils.isEmpty(name) ? new File(path).exists():new File(path,name).exists();
    }

    /**
     * 将每级目录名拼接成文件夹目录
     * @param str  文件各级目录
     */
    public static String getFilePath(String... str){
        StringBuffer sb = new StringBuffer();
        if (str == null) {
            throw new RuntimeException("文件目录不能为null");
        }
        for (int i = 0; i < str.length; i++) {
            sb.append(str[i] + File.separator);
        }
        return sb.toString();
    }
}

版权声明:本文为博主原创文章,未经博主允许不得转载。

JAVA之旅(二十八)——File概述,创建,删除,判断文件存在,创建文件夹,判断是否为文件/文件夹,获取信息,文件列表,文件过滤

JAVA之旅(二十八)——File概述,创建,删除,判断文件存在,创建文件夹,判断是否为文件/文件夹,获取信息,文件列表,文件过滤 我们可以继续了,今天说下File 一.File概述 文件的操...
  • qq_26787115
  • qq_26787115
  • 2016年07月10日 20:58
  • 3385

判断文件夹、文件是否存在、创建文件 c++ matlab

Matlab: 1. exist判断当前目录是否存在指定文件夹 例子1 if ~exist('Figure')     mkdir('Figure') % 若不存在,在当前目录中产生一个子目录‘Fi...
  • qing101hua
  • qing101hua
  • 2016年10月26日 09:47
  • 3157

bat批处理判断文件夹是否存在并创建文件夹

bat批处理判断文件夹是否存在并创建文件夹
  • wangdonghao137
  • wangdonghao137
  • 2015年03月02日 10:41
  • 12206

bat批处理判断文件夹是否存在并创建文件夹

以下批处理在Xp及Windows Server2008 R2上测试可用 [plain] view plain copy  print? @echo off  ...
  • ahngzw77
  • ahngzw77
  • 2016年11月16日 15:42
  • 7626

判断路径文件夹是否存在,不存在创建

C/C++判断一个文件是否存在 1. bool isExistFile(const char *pszFileName){     FILE *fp = fopen(pszFileName,...
  • u012377333
  • u012377333
  • 2014年09月05日 11:53
  • 5240

VC++ 判断文件或文件夹是否存在

在Windows应用项目中,几乎总会需要用到一些文件系统相关的函数,如:判断文件是否存在,判断文件夹是否为空,删除文件夹及其所有子项,计算文件夹的大小,等等。不知为何,Windows并未提供直接的AP...
  • u011269801
  • u011269801
  • 2017年05月12日 18:13
  • 421

Qt 判断文件或文件夹是否存在及创建文件夹

1. 判断文件夹是不是存在 参数说明: QString fullPath;//文件夹全路径 /*方法1*/ bool isDirExist(QString fullPath) {     ...
  • lusirking
  • lusirking
  • 2016年06月12日 11:13
  • 14586

C/C++ 判断文件夹是否存在以及创建、删除文件夹 windows以及linux通用

参考: http://blog.csdn.net/tigerjibo/article/details/11712039 http://baike.baidu.com/subview/355/5900...
  • u012005313
  • u012005313
  • 2016年02月18日 20:49
  • 25667

C# 判断文件夹存在与否并创建文件夹

protected void Button1_Click(object sender, EventArgs e) { if (Directory.Exists(Serve...
  • wangzl1163
  • wangzl1163
  • 2016年05月11日 09:11
  • 1771

IOS开发中判断文件是否存在,不存在则拷贝

首先,先总结一下如何获取Documents目录,在ios开发中,我们经常需要检索Documents目录的完整路径以便读取和写入文件,我总结了以下两种方法: 1、NSString *documentsD...
  • lbuskeep
  • lbuskeep
  • 2014年10月07日 14:30
  • 6280
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:创建,删除文件或文件夹及判断其是否存在
举报原因:
原因补充:

(最多只允许输入30个字)