剪切(使用File类的renameTo 方法和递归实现非空目录的剪切)
来源:互联网 发布:淘宝小号怎么申请 编辑:程序博客网 时间:2024/06/01 09:30
剪切(使用File类的renameTo 方法和递归实现非空目录的剪切)
package com.cn.recursion;import java.io.File;import java.io.IOException;public class CutDireaction {public static void main(String[] args) throws IOException {/** * 以下是File类方法的测试 *///renameTo()如果目标文件与源文件是在同一个路径下,那么renameTo()的作用是重命名/*File file = new File("f:/b.txt");File file2 = new File("f:/c.txt");System.out.println(file.renameTo(file2));File file5 = new File("f:/aaa");File file6 = new File("f:/bbb");System.out.println(file5.renameTo(file6));*///如果目标文件与源文件不是在同一个路径下,那么renameTo()的作用就是剪切//File file3 = new File("g:/b.txt");//File file4 = new File("f:/b.txt");//System.out.println(file3.renameTo(file4));//如果目标文件与源文件不是在同一个路径下,那么renameTo()的作用就是剪切,而且还不能操作文件夹,只能操作文件。/*File file7 = new File("f:/bbb");File file8 = new File("g:/bbb");System.out.println(file7.renameTo(file8)); //失败 false*///renameTo(File dest)重命名文件或文件夹,也可以操作非空的文件夹(相同路径),剪切(不同路径)时候不能操作非空的文件夹。/*File file9 = new File("f:/a");File file10 = new File("f:/c");//true//File file11 = new File("g:/c");//falseSystem.out.println(file9.renameTo(file10));*//*File src = new File("f:\\a");System.out.println(src.getName());*/// 使用File类和递归实现文件的剪切.File src = new File("f:\\a");//File dest = new File("f:/");File dest = new File("g:/");cutFile(src, dest);}/** * 使用File类和递归实现文件的剪切. * @param src * @param dest * @throws IOException */private static void cutFile(File src, File destDir) throws IOException {// f:/a g:/if(!src.exists() || !destDir.exists()){System.out.println("指定的源目录或者目标目录不存在");return;}if(!src.isDirectory() || !destDir.isDirectory()){System.out.println("指定的源目录或者目标目录不是目录");return;}//得到源目录名String srcName = src.getName();// a//根据源目录名创建新目录名File dest = new File(destDir, srcName);dest.mkdir();//创建目标目录 g:/a ............//遍历源目录File[] listFiles = src.listFiles();for(File f : listFiles){if(f.isFile()){File destFile = new File(dest, f.getName());//如果是子源文件,使用rename()方法移动至目标目录中,该方法同时会删除源目录中的文件(剪切)f.renameTo(destFile);//g:/a/a.txt ....}else if(f.isDirectory()){// 如果是子目录,执行重复动作. 将源子目录 , 目标目录(父目录+//)cutFile(f, new File(dest, File.separator)); // f:/a/b // g:/a/}}//删除源目录src.delete();}}
0 0
- 剪切(使用File类的renameTo 方法和递归实现非空目录的剪切)
- file 图片的剪切
- JAVA利用renameTo实现文件夹剪切操作
- 使用ROI的方法剪切图像
- opencv实现图像的剪切和缩放
- 剪切一个非空文件夹
- VectorDraw剪切多面体的方法
- ImageView实现图片的剪切
- 图片的缩放和剪切
- 对于图片的剪切的实现(剪切时自动放大缩小)
- 请慎用java的File#renameTo(File)方法(转)
- java的File.renameTo(File)方法
- 慎用java的File#renameTo(File)方法
- 编写方法,完成指定文件的复制和剪切;使用BufferedReader和BufferedWriter完成。
- vim 下使用复制、剪切、粘贴命令的方法
- 详解css中用clip剪切图片的原理和方法
- css快速剪切图片的方法和clip属性介绍
- 用递归方法实现指定目录的枚举——兼谈File类的使用
- 随笔 2017-3-15 文件数据流的close()
- RecyclerView瀑布流加载图片实现
- leetcode 二叉树--之建BST树
- 文件I/O与标准I/O的区别和优缺点
- Android 使用Zxing实现二维码的生成,扫描
- 剪切(使用File类的renameTo 方法和递归实现非空目录的剪切)
- 速写KMP字符串匹配算法
- Mac上tomcat服务器的安装、配置、启动、关闭
- Rxjava 背压笔记
- jvm内存区域的理解
- jquery.fly.js实现添加购物车效果、实现抛物线运动
- [BZOJ3441]乌鸦喝水
- c3p0和QueryRunner的结合使用,让开发更加简便
- MySQL的enum与set约束