java根据指定路径(或者指定文件名字)创建文件

这篇博客介绍了在Java中如何进行文件操作,包括检查路径并创建文件、创建包含文件名的目录,以及删除文件和目录的方法。提供了详细的代码示例,展示了通用的文件添加、删除功能的实现步骤,确保了文件和目录的安全创建与删除。
摘要由CSDN通过智能技术生成

一、创建文件的思路:判断路径是否存在,不存做就先创建路径,然后再创建文件

细致分两种情况:

        1.路径中不包括文件名字(另外单独给出文件名字)

                例如:D:\user

        2.路径中包括文件名字

                例如:D:\user\demo.html

二、代码:

        第一种情况:

/**
     * 通用文件添加操作
     * @param
     * @return
     */
    public static Boolean addFile(String filePath,String fileName){
        try {
            File dir = new File(filePath);
            if(!dir.exists()){
                dir.mkdirs();//创建目录
            }
            File f = new File(filePath,fileName);
            if(!f.exists()){
                f.createNewFile();
                return true;
            }

        } catch (Exception e) {
            e.printStackTrace();
        }
        return false;
    }

    

        第二种情况:

     public static Boolean addFile(String filePath,String fileName){
            String fileName="D:\\file\\demo.html" ;
            File file=new File(fileName);
            if(!file.getParent().exists()){//如果文件夹不存在
                file.mkdir();//创建文件夹
            }
            try{//异常处理
                //如果file文件夹下没有demo.html就会创建该文件
                   File f = new File(fileName);
                    f.createNewFile();
                    return true;
                /*这样可以在文件中写内容
                  BufferedWriter bw=new BufferedWriter(new             
                  FileWriter("D:\\file\\test.txt"));
                  bw.write("Hello!");//在创建好的文件中写入"Hello"
                  bw.close();//一定要关闭文件
                 */

            }catch(IOException e){
                e.printStackTrace();
            }
            return false;
}

三、删除文件通用代码:

/**
     * 判断指定的文件或文件夹删除是否成功
     * @param FileName 文件或文件夹的路径
     * @return true or false 成功返回true,失败返回false
     */
    public static boolean deleteAnyone(String FileName){
        File file = new File(FileName);//根据指定的文件名创建File对象
        if ( !file.exists() ){  //要删除的文件不存在
            System.out.println("文件"+FileName+"不存在,删除失败!" );
            return false;
        }else{ //要删除的文件存在
            if ( file.isFile() ){ //如果目标文件是文件
                return deleteFile(FileName);
            }else{  //如果目标文件是目录
                return false;
            }
        }
    }


    /**
     * 判断指定的文件删除是否成功
     * @param fileName 文件路径
     * @return true or false 成功返回true,失败返回false
     */
    public static boolean deleteFile(String fileName){
        File file = new File(fileName);//根据指定的文件名创建File对象
        if (  file.exists() && file.isFile() ){ //要删除的文件存在且是文件
            if ( file.delete()){
                System.out.println("文件"+fileName+"删除成功!");
                return true;
            }else{
                System.out.println("文件"+fileName+"删除失败!");
                return false;
            }
        }else{
            System.out.println("文件"+fileName+"不存在,删除失败!" );
            return false;
        }


    }


    /**
     * 删除指定的目录以及目录下的所有子文件
     * @param dirName is 目录路径
     * @return true or false 成功返回true,失败返回false
     */
    public static boolean deleteDir(String dirName){
        if ( dirName.endsWith(File.separator) )//dirName不以分隔符结尾则自动添加分隔符
            dirName = dirName + File.separator;
        File file = new File(dirName);//根据指定的文件名创建File对象
        if ( !file.exists() || ( !file.isDirectory() ) ){ //目录不存在或者
            System.out.println("目录删除失败"+dirName+"目录不存在!" );
            return false;
        }
        File[] fileArrays = file.listFiles();//列出源文件下所有文件,包括子目录
        for ( int i = 0 ; i < fileArrays.length ; i++ ){//将源文件下的所有文件逐个删除
            deleteAnyone(fileArrays[i].getAbsolutePath());
        }
        if ( file.delete() )//删除当前目录
            System.out.println("目录"+dirName+"删除成功!" );
        return true;

    }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值