zoukankan      html  css  js  c++  java
  • Java.io.File中的delete()方法和deleteOnExit()方法的区别

    1.delete()方法:

                当调用delete()方法时,直接删除文件,不管该文件是否存在,一经调用立即执行;

    2.deleteOnExit()方法:

               当调用deleteOnExit()方法时,只是相当于对deleteOnExit()作一个声明,当程序运行结束,JVM终止时才真正调用deleteOnExit()方法实现删除操作。即该方法是将删除的命令缓存了一下,到服务停止的时候再进行操作!

    示例:

     @Test
     public void test() throws IOException

    {
            File file=new File("E:"+File.separator+"filetest"+File.separatorChar+"HelloFile.txt");
            if(file.exists()){
                  
      file.deleteOnExit();
                    file.createNewFile();
           }
           else{
               logger.info("不存在该文件");
                 }

    }

    测试结果:在相应的位置HelloFile.txt 不存在(被删除掉了);因为此处的deleteOnExit()是在JVM退出的时候才执行的,因此相当于是先调用了createNewFile()再调用deleteOnExit();

    @Test
     public void test() throws IOException

    {
            File file=new File("E:"+File.separator+"filetest"+File.separatorChar+"HelloFile.txt");
            if(file.exists()){
                      
    file.delete();
                      file.createNewFile();
           }
           else{
               logger.info("不存在该文件");
                 }

    }

    测试结果:在相应的位置HelloFile.txt 仍存在(被删除掉后又建立一个新的该文件);因为此处先调用了delete()再调用createNewFile()

  • 相关阅读:
    VS2008 Pocket PC 2003 SE仿真程序上网设置
    http请求头content-type详解
    gitLab介绍以及常用指令
    vue-cli + webpack 项目搭建
    uni-app中分页器(uni-pagination)的使用
    关于vue给对象动态添加属性页面不会动态更新的问题
    uni-app取消原生头部导航栏
    uni-app中原生头部导航栏图标事件的监听
    uni-app中原生头部导航栏图标的添加
    uni-app背景图片的引用问题
  • 原文地址:https://www.cnblogs.com/jun9207/p/5191899.html
Copyright © 2011-2022 走看看