全部 android asp.net C/C++ cshap IOS Java javascript nodejs perl php python ruby web容器 其他 前端 数据库 第三方平台 混合式APP 网络 系统 默认分类

关于IO学习的几个问题

0 238

这是最近学到的几个关于IO文件操作的几个小算法,今天总结出来。


1. 删除一个给定的目录,这上目录不为空目录,使用递归来实现

public void test04(File file) {
    File[] listFiles = file.listFiles();
    for (File f : listFiles) {    
        if (f.isFile()) {// 是文件
        f.delete();
        } else {// 是文件夹
        test04(f);
        f.delete();
        }
        }
        file.delete();
}
View Code

2. 写一个方法,可以复制一个目录,(此目录不为空)

public void testCopyFolder() throws IOException {
    File file = new File("e:/java");
    File copyFile = new File("e:/copyjava");
    copyFolder(file,copyFile);
}

public void copyFolder(File src, File dest) throws IOException {
    // 文件夹的处理
    if (src.isDirectory()) {
        if (!dest.exists()) {
            dest.mkdir();
        }

        String files[] = src.list();
        for (String file : files) {
            File srcFile = new File(src, file);
            File descFile = new File(dest, file);
            copyFolder(srcFile, descFile);// 递归调用
        }
    } else {// 文件的复制
        InputStream in = new FileInputStream(src);
        OutputStream out = new FileOutputStream(dest);

        byte[] bt = new byte[1024];
        int len = 0;
        while ((len = in.read(bt)) > 0) {
            out.write(bt, 0, len);
        }
        out.close();
        in.close();
    }
}
View Code

 

热忱回答0

  • 加入年费大会员(20每年)
  • 热门标签

    猜你喜欢

    1. Spring Security4实例(Java config 版) —— Remember-Me
    2. JSP/Servlet------------------------->>动态网页开发基础(一)
    3. mybatis代理类Demo
    4. SpringMvc拦截器小测试
    5. Java基础总结之数据类型和他们之间的转换(1)
    6. Java中Comparable和Comparator你知多少?
    7. Java中元组的使用
    8. Java学习记录第一章
    9. SpringMVC:学习笔记(1)——理解MVC及快速入门
    10. java桥连接sql server--关于登录验证及对数据库增删改查应用

    衣食父母

    最近热帖

    1. 1分钟选好最合适你的JavaScript框架 5
    2. 关于前端的photoshop初探的学习笔记 5
    3. iOS用域名或主机名获取IP地址(包含C语言接口 和iOS原生) 9
    4. phpstorm激活码生成器地址 9
    5. Angular4 组件通讯方法大全 8
    6. SignalR在ASP.NET MVC中的应用 8
    7. 一份关于npm的新手指南 8
    8. 二叉树及二叉树的基本操作(基础面试题型) 9
    9. Kibana5 数据探索使用(Discover功能) 9
    10. Redis数据类型 10

    随机文章

    1. easyUI参数传递Long型时,前台解析出错的问题。
    2. 从零开始制作即时战略游戏(0)
    3. 《深入理解Java7核心技术与最佳实践》读书笔记(1.1)---Project Coin介绍
    4. C++哈夫曼树编码和译码的实现
    5. 学习ASP.NET Core,怎能不了解请求处理管道[2]: 服务器在管道中的“龙头”地位