File类——renameTo()将文件夹内的所有指定类型文件 移动到另一个文件夹内

* 由于   张孝祥-7K月薪面试题破解之一_交通灯管理系统视频教程 文件夹下 的视频文件都存放在每个子文件夹中

* 需求:将所有视频文件全部移动到  张孝祥-7K月薪面试题破解之一_交通灯管理系统视频教程文件夹下  原来存放视频的子文件夹删除

public class moveFiles {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		File f = new File("D:\\BaiduYunDownload\\张孝祥-7K月薪面试题破解之一_交通灯管理系统视频教程");
//		File f = new File("D:\\BaiduYunDownload\\传智播客_张孝祥_Java多线程与并发库高级应用视频教程下载");
		if (f.exists())
			moveFiles2(f, f.getPath());
		System.out.println("done");
	}

	public static void moveFiles(File f, String path) {
		File[] files = f.listFiles();
		String addName = "";
		// 先判断 文件夹的名称是否含有"_交通",然后在 获取角标 否则indexOf会返回-1出现substring(-1)出现异常
		if (f.getName().contains("_交通")) {
			int index = f.getName().indexOf("_交通");
//			int index = f.getName().indexOf("祥_")+1;
			addName = f.getName().substring(index);
		}
		for (File file : files) {
			if (file.isDirectory())
				moveFiles(file, path);
			else {
				if (file.getName().endsWith(".avi")) {
					File dest = new File(path, file.getName().replace(".",
							addName + "."));
					file.renameTo(dest);
					System.out.println(dest.getName());
				} else
					file.delete();// 删除多余文件
			}
			file.delete();// 删除空文件夹
		}
	}

	// 如果需要保留 不包含"_交通"的文件夹的话 代码如下
	public static void moveFiles2(File f, String path) {
		File[] files = f.listFiles();
		int index = f.getName().indexOf("_交通");
		String addName = f.getName().substring(index);
		for (File file : files) {
			System.out.println(file.getName());
			if (file.isDirectory())
				if (file.getName().contains("_交通"))// 在这里判断的话可以保证
													// 除最外层文件外每个f对象都包含"_交通"
					moveFiles(file, path);
				else {
					if (file.getName().endsWith(".avi")) {
						File dest = new File(path, file.getName().replace(".",
								addName + "."));
						file.renameTo(dest);
						// System.out.println("生成:"+dest.getName());
					} else {
						System.out.println(file.delete() + "..删除的文件是."
								+ file.getName());// 删除多余文件
					}
				}
			// 删除空文件夹  当且仅当成功删除文件或目录时,返回true;否则返回false
			System.out.println(file.delete() + ",,删除的文件夹是:" + file.getName());
		}
	}
}

File类——renameTo()将文件夹内的所有指定类型文件 移动到另一个文件夹内

时间: 2024-10-14 23:48:18

File类——renameTo()将文件夹内的所有指定类型文件 移动到另一个文件夹内的相关文章

【java IO】使用Java输入输出流 读取txt文件内数据,进行拼接后写入到另一个文件中

1 package com.sxd.test.util; 2 3 import java.io.BufferedReader; 4 import java.io.BufferedWriter; 5 import java.io.File; 6 import java.io.FileInputStream; 7 import java.io.FileOutputStream; 8 import java.io.IOException; 9 import java.io.InputStreamRea

将一个文件夹中的所有图片压缩,并保存到另一个文件夹中

from PIL import Image from os import listdir import numpy as np path = '/home/hscuabc/WorkSpace/Python-srf/深度神经网络/data/人脸识别测试数据/negdata' save_path = '/home/hscuabc/WorkSpace/Python-srf/深度神经网络/data/人脸识别测试数据/reshape_negdata' w_expect = 20;l_expect = 20

file类之目录

可以解决的问题是:                有时需要列出目录下指定类型的文件,比如java,txt等扩展名的文件,可以使用File类的下述两个方法,列出指定类型的文件. /* file类实现两个作用: (1). 创建目录 ------public boolean mkdir() (2).列出目录中的文件 { //有以下两个方法实现: public String [] list(FilenameFilter obj) --->该方法用字符串形式返回目录下的全部文件 public File p

java 19 -12 File类的一些方法1

package zl_file; import java.io.File; import java.io.IOException; /* 我们要想实现IO的操作,就必须知道硬盘上文件的表现形式. 而Java就提供了一个类File供我们使用. File:文件和目录(文件夹)路径名的抽象表示形式 构造方法:这三种效果一样,但都不会真正创建出文件夹或者文件 File(String pathname):根据一个路径得到File对象 File(String parent, String child):根据

黑马程序员——Java基础--IO流(一)---File类以及其他流对象

------Java培训.Android培训.iOS培训..Net培训.期待与您交流! ------- 一.File类 File类是将文件系统中的文件和文件夹封装成了对象.提供了更多的属性和行为可以对这些文件和文件夹进行操作.这些是流对象办不到的,因为流只操作数据.File对象可以作为参数传递给流对象的构造函数.File 类的实例是不可变的:也就是说,一旦创建,File 对象表示的抽象路径名将永不改变. 1.File类中的方法 (1).File类的构造方法以及字段 1 new File(Stri

6.01_异常与File类

一.异常的概述和分类 * A:异常的概述 * 异常就是Java程序在运行过程中出现的错误. * B:异常的分类 * 通过API查看Throwable * Error * 服务器宕机,数据库崩溃等 * Exception C:异常的继承体系 * Throwable * Error * Exception * RuntimeException 二.JVM默认是如何处理异常的 * A:JVM默认是如何处理异常的 * main函数收到这个问题时,有两种处理方式: * a:自己将该问题处理,然后继续运行

异常及File类概述

一.异常 1.异常分类: Throwable:Throwable类是 Java 语言中所有错误或异常的超类.它只有两个子类 Error:属于严重问题,只能避免:如内存溢出(OutOfMemory) Exception:可以解决的异常问题 编译时期异常:在写代码期间遇到的异常,不处理没办法运行: 运行时期异常(RuntimeException):在程序运行时期遇到的异常,一般情况不是编译时期异常就是运行时期异常: 2.异常处理: 1)捕获异常:try-catch-finally A:格式:try{

java之File类

1.File类概述 我们要想实现IO的操作,就必须知道硬盘上文件的表现形式.而java就提供了一个File类来让我们使用. File:文件或目录(文件夹)路径名的抽象表示形式. 2.File类的构造方法 File(String pathname) 根据一个路径得到File对象 File(String parent,String child) 根据一个目录和一个子文件/子目录得到一个File对象 File(File parent,String child) 根据父File对象和一个子文件/目录得到

黑马程序员——Java基础——IO流(二)——File类、Properties类、打印流、序列流

第一件 File类 一.File类 a.用于将文件或者文件夹封装成对象 b.方便对文件与文件夹的属性信息进行操作 c.File对象可以作为参数传递给流的构造函数 d.了解File类中的常用方法 二.File对象的创建 a.File f=new File("a:\\a.txt"): b.File f2=new File("C:\\abc","a.txt");//分开的好处是后一个参数能够使用其他对象如string c.File d=new File