• 好用的java文件备份工具

    这个工具是一边备份一边删除原来目录所有的要备份数据。

package cn.gitv.pro.charging.lncmcc.test;import java.io.*;/*** @author * @create on  2019-12-05 10:10*/
public class FileCopyUtils {//    实现对目录的复制
//    在复制目录的过程中判断源文件下所有文件对象是否为目录,是的话则利用递归调用自己复制目录
//    如果是文件的话,则调用copyFile方法复制文件public static void copyDir(String srcPath,String destPath) {File src = new File(srcPath);//源头File dest = new File(destPath);//目的地//判断是否为目录,不存在则不作操作if(!src.isDirectory()) {return;}//判断目的地目录是否存在,不存在就创建目录if(!dest.exists()) {boolean mkdir = dest.mkdir();}//获取源头目录下的文件列表,每个对象代表一个目录或者文件File[] srcList = src.listFiles();if (null != srcList && srcList.length > 0){//遍历源头目录下的文件列表for (File aSrcList : srcList) {//如果是目录的话if (aSrcList.isDirectory()) {//递归调用复制该目录copyDir(srcPath + File.separator + aSrcList.getName(), destPath + File.separator + aSrcList.getName());//如果是文件的话} else if (aSrcList.isFile()) {//递归复制该文件copyFile(srcPath + File.separator + aSrcList.getName(), destPath + File.separator + aSrcList.getName());}aSrcList.delete();}}
//        boolean delete = src.delete();}//    实现对文件的复制public static void copyFile(String isFile, String osFile) {InputStream is = null;OutputStream os = null;try {is = new FileInputStream(isFile);os = new FileOutputStream(osFile);byte[] data = new byte[1024];//缓存容器int len = -1;//接收长度while((len=is.read(data))!=-1) {os.write(data, 0, len);}} catch (FileNotFoundException e) {// TODO Auto-generated catch blocke.printStackTrace();}catch(IOException e) {e.printStackTrace();}finally {//  释放资源 分别关闭 先打开的后关闭try {if(null!=os) {os.close();}} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}try {if(null!=is) {is.close();}} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}}}public static void main(String[] args) {copyDir("D:\\test3","D:\\test4");}
}

JAVA 好用的文件备份代码相关推荐

  1. Java框架JSON-RPC项目demo代码实战 + JAVA WEB配置虚拟目录(转自21天java web开发)

    Java框架JSON-RPC项目demo代码实战 备注  JAVA WEB配置虚拟目录(转自21天java web开发) https://blog.csdn.net/wjxbj/article/det ...

  2. java字典写实例,基于JAVA的新华字典接口调用代码实例

    基于JAVA的新华字典接口调用代码实例 接口描述:基于JA V A的新华字典接口调用代码实例 接口平台:聚合数据 import java.io.BufferedReader; import java. ...

  3. Java文件上传功能代码 —— 普遍适用

    版权声明:本文为博主原创文章,如需转载,请标明出处. https://blog.csdn.net/alan_liuyue/article/details/72782207 一. 前言   通过之前的博 ...

  4. java bitset用途_浅谈Java BitSet使用场景和代码示例

    搜索热词 @H_502_0@一.什么是BitSet? @H_502_0@ 注:以下内容来自JDK API: @H_502_0@ BitSet类实现了一个按需增长的位向量.位Set的每一个组件都有一个b ...

  5. Java多线程之多线程工程代码编写思维方式

    Java之多线程的工程代码编写思维方式 题目:三个售票员卖出30张票,用线程模拟. 前言: 本文涉及synchronized.Lock和拉姆达表达式(Lambda Expressions),前两知识点 ...

  6. java vo转map_Jython:在 Java 程序里运行 Python 代码 4.5

    彭翌 彭翌,网易游戏资深运维开发工程师,从事大数据相关的基础架构平台研发工作,业余时间也关注分布式系统等相关领域. 前言 众所周知,JVM 在大数据基础架构领域可以说是独占鳌头,当我们需要开发大数据处 ...

  7. java调用、执行groovy代码

    java调用.执行groovy代码 1: package test; 2: 3: import javax.script.ScriptEngine; 4: import javax.script.Sc ...

  8. Java 线程池框架核心代码分析

    转载自 Java 线程池框架核心代码分析 前言 多线程编程中,为每个任务分配一个线程是不现实的,线程创建的开销和资源消耗都是很高的.线程池应运而生,成为我们管理线程的利器.Java 通过Executo ...

  9. java 静态代码块_关于Java你不知道的那些事之代码块

    前言 普通代码块:在方法或语句中出现的{},就被称为代码块 静态代码块:静态代码块有且仅加载一次,也就是在这个类被加载至内存的时候 普通代码块和一般语句执行顺序由他们在代码中出现的次序决定,先出现先执 ...

最新文章

  1. The form contains the following errors
  2. 一个进程仅存在给定类型的一个挂起信号,同一进程同样类型的其他信号不被排队
  3. 参考文献顺序不对_Endnote插入参考文献的保姆级教程
  4. python编写ATM类_Python中编写类的各种技巧和方法
  5. Ubuntu16.04 设置环境变量的方法
  6. Doxygen学习小记
  7. 保定2021高考成绩查询,保定2021年中考网上查询
  8. mysql三表联查sql语句_mybatis中SQL语句的三表联查
  9. Linux动态库依赖其它动态库的问题
  10. 页面崩溃原因分析及解决
  11. 特斯拉国产又怎样,十个月后就完蛋
  12. kivy android wifi,Kivy / Buildozer VM Ubuntu不能连接到网络的问题解决
  13. word如何去除表格中高亮部分(表格属性-边框和底纹)
  14. ArcFaceSDK3.0 Python Demo
  15. collections库
  16. 163邮箱自动化登录实现模块化【1】
  17. html视频怎么转换成图片,WPS演示如何将图片转换成视频?
  18. 数据结构与算法:树 二叉树入门(一)
  19. fedora 16 安装后的基本配置
  20. Baxter实战——baxter摇摆起来(打开gazebo进入baxter仿真)

热门文章

  1. 【51单片机】室友用一把王者时间,学会了去使用数码管。
  2. 租赁合同甲方违约怎么办
  3. Go语言之值传递与引用传递
  4. 区块链数据共享论文阅读
  5. 淘宝框架atlas基本使用说明
  6. jupterLab 路径报错: No such file or directory
  7. 基于FPGA的CAN总线控制器的设计(下)
  8. vue中mapGetters函数前面的三个点是什么意思?
  9. React 安装 node-sass失败解决方案
  10. 大师之路Photoshop教程电子版2.0