博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
实践语法----文件创建删除读写
阅读量:5163 次
发布时间:2019-06-13

本文共 5093 字,大约阅读时间需要 16 分钟。

使用 java.io.file 创建文件(文件夹),算是 java 最基础的知识,但实战项目中还是需要知晓细节。

    比如 File 类中的 mkdir() 和 mkdirs() 的区别。

package supermarket;import java.io.File;import java.io.IOException;import java.nio.file.*;public class Filetest {        public void  filetest(){        File file1 = new File("D:/AAA/BBB/CCC");        if  (!file1 .exists()  && !file1 .isDirectory())              {                   System.out.println("//不存在");              file1 .mkdir();                  if (file1.mkdirs()) {                System.out.println("多级层文件夹创建成功!创建后的文件目录为:" + file1.getPath() + ",上级文件为:" + file1.getParent());            }                    File file2 = new File("D:/AAA/BBB/CCC/DDD");            if (file2.mkdir()) {                System.out.println("单文件夹 DDD 创建成功!创建后的文件目录为:" + file2.getPath() + ",上级文件为:" + file2.getParent());            }                    File file3 = new File("D:/AAA/BBB/CCC/DDD","mytest.txt");            try {                if (file3.createNewFile()) {                    System.out.println("多级层文件夹下文件创建成功!创建了的文件为:" + file3.getAbsolutePath() + ",上级文件为:" + file3.getParent());                }            } catch (IOException e) {                e.printStackTrace();            }                    } else           {              System.out.println("//目录存在");             File file3 = new File("D:/AAA/BBB/CCC/DDD","mytest.txt");            file3.delete();            System.out.println("删除成功");                                String path = "D:/AAA/BBB/CCC";            File file = new File(path);            String[] tempList = file1.list();            File temp = null;                for (int i = 0; i < tempList.length; i++) {                        if (path.endsWith(File.separator)) {                            temp = new File(path + tempList[i]);                            } else {                            temp = new File(path + File.separator + tempList[i]);                            }                        if (temp.isFile()) {                            temp.delete();                            }                    if (temp.isDirectory()) {                    //先删除文件夹里面的文件                    delAllFile(path + "/" + tempList[i]);                    //再删除空文件夹                      delFolder(path + "/" + tempList[i]);                                        System.out.println("overoverover");                                }                 }          }        }    private void delFolder(String string) {        // TODO Auto-generated method stub            }    private void delAllFile(String string) {        // TODO Auto-generated method stub            }            } 上述代码是第一天拷贝了网上的。没有修改好。 删除文件怎么都删除不掉,经过今天的修改,终于可以实现循环删除了,暗自庆幸下。 代码如下:
package supermarket;import java.io.File;import java.io.IOException;import java.nio.file.*;public class Filetest {        public  boolean deletefile(String delpath) throws Exception {        File file = new File(delpath);        if (file.isDirectory()) {            String[] filelist = file.list();            for (String delFile : filelist) {                File delfile = new File(delpath + File.separator + delFile);                if (delfile.isDirectory()) {                    deletefile(delpath + File.separator + delFile);                } else                    System.out.println("正在删除文件:" + delfile.getPath() + ",删除是否成功:" + delfile.delete());            }            System.out.println("正在删除空文件夹:" + file.getPath() + ",删除是否成功:" + file.delete());        } else            System.out.println("正在删除文件:" + file.getPath() + ",删除是否成功:" + file.delete());        return true;    }        public void  filetest() throws Exception{        File file1 = new File("D:/AAA/BBB/CCC");        if  (!file1 .exists()  && !file1 .isDirectory())              {                   System.out.println("//不存在");              file1 .mkdir();                  if (file1.mkdirs()) {                System.out.println("多级层文件夹创建成功!创建后的文件目录为:" + file1.getPath() + ",上级文件为:" + file1.getParent());            }                    File file2 = new File("D:/AAA/BBB/CCC/DDD");            if (file2.mkdir()) {                System.out.println("单文件夹 DDD 创建成功!创建后的文件目录为:" + file2.getPath() + ",上级文件为:" + file2.getParent());            }                    File file3 = new File("D:/AAA/BBB/CCC/DDD","mytest.txt");            try {                if (file3.createNewFile()) {                    System.out.println("多级层文件夹下文件创建成功!创建了的文件为:" + file3.getAbsolutePath() + ",上级文件为:" + file3.getParent());                }            } catch (IOException e) {                e.printStackTrace();            }                    } else           {              System.out.println("//目录存在");             Filetest file3 = new Filetest();//            file3.delete();            file3.deletefile("D:/AAA");                        System.out.println("删除成功");                                        }        }            }//Filetest ff = new Filetest();        try {            ff.filetest();        } catch (Exception e) {            // TODO Auto-generated catch block            e.printStackTrace();        }
结果如下所示:

 

 

 

转载于:https://www.cnblogs.com/wzl629/p/8821714.html

你可能感兴趣的文章
IP V4 和 IP V6 初识
查看>>
Spring Mvc模式下Jquery Ajax 与后台交互操作
查看>>
(转)matlab练习程序(HOG方向梯度直方图)
查看>>
『Raid 平面最近点对』
查看>>
【ADO.NET基础-数据加密】第一篇(加密解密篇)
查看>>
C语言基础小结(一)
查看>>
STL中的优先级队列priority_queue
查看>>
UE4 使用UGM制作血条
查看>>
浏览器对属性兼容性支持力度查询网址
查看>>
OO学习总结与体会
查看>>
虚拟机长时间不关造成的问题
查看>>
面试整理:Python基础
查看>>
Python核心编程——多线程threading和队列
查看>>
Program exited with code **** 相关解释
查看>>
植物大战僵尸中文年度版
查看>>
26、linux 几个C函数,nanosleep,lstat,unlink
查看>>
投标项目的脚本练习2
查看>>
201521123107 《Java程序设计》第9周学习总结
查看>>
Caroline--chochukmo
查看>>
iOS之文本属性Attributes的使用
查看>>