`

文件的复制和删除

 
阅读更多
  /**
	 * 删除文件,通过文件的类型
	 * @param filePath
	 * @param type
	 */
	
	public static  void deleteType(String filePath,String type){
		File file = new File(filePath);
		if(!file.isDirectory())
			return;
		String[] list = file.list();
		if(list==null)
			return;
		for(int i=0;i<list.length;i++){
			File f = new File(file,list[i]);
			String panth = f.getPath();
			if(f.isDirectory()){
				deleteType(panth,type);
			}
			if(panth.endsWith(type)){
				System.out.println(f.getFreeSpace()+","+panth);
				//f.delete();
			}
		}
		file.delete();
	}


/**
	 * 复制文件
	 * @param fromFilepath
	 * @param toFilepath
	 */
	public static void copyFile(File fromFile,File tofile){
		if(tofile!=null&&tofile.isDirectory()){
			tofile = new File(tofile,fromFile!=null?fromFile.getName():"");
		}
		InputStream inputs =null;
		OutputStream output =null;
		try {
			inputs = new FileInputStream(fromFile);
			output = new FileOutputStream(tofile);
			byte[] b = new byte[1024];
			int len = inputs.read(b);
			while(len!=-1){
				output.write(b, 0, len);
				len = inputs.read(b);
			}
			//System.out.println("----------copy successful-------------");
		} catch (FileNotFoundException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		}
		
	}
	
	/**
	 * 复制文件夹
	 * @param fromFilepath
	 * @param toFilepath
	 */
	public static void copyDir(String fromFilepath,String toFilepath){
		File fromFile = new File(fromFilepath);
		File toFile = new File(toFilepath);
		if(fromFile.isDirectory()&&flag){
			toFilepath = toFilepath+"/"+fromFile.getName();
			toFile = new File(toFilepath);
			if(!toFile.exists())
				toFile.mkdirs();
			flag = false;
		}
			
		String[] list = fromFile.list();
		if(list==null)
			return;
		for(int i=0;i<list.length;i++){
			File file = new File(fromFile,list[i]);
			
			
			if(file!=null&&file.isDirectory()){
				toFile = new File(toFilepath,list[i]);
				if(!toFile.exists())
					toFile.mkdirs();
				System.out.println("--------"+file.getPath()+"-------------i="+i+"----->"+list[i]);
				System.out.println("++++++++"+toFile.getPath()+"+++++++++++++");
				copyDir(file.getPath(),toFile.getPath());
				
			}else
				copyFile(file, toFile);
		}
		
	}

分享到:
评论

相关推荐

    java对文件的复制和删除(文件夹、文件)

    下面将详细讨论Java中文件复制和删除的关键知识点,以及可能用到的相关API。 1. **文件操作基础**: - Java中的`java.io.File`类是文件和目录路径名的抽象表示形式。它可以用来创建、删除、重命名文件或目录,以及...

    C#编写的文件目录管理程序 实现复制删除功能

    在本文中,我们将深入探讨如何使用C#编程语言来创建一个文件目录管理程序,该程序具备文件复制和删除的功能,并且充分利用了Windows Forms中的treeView控件。treeView控件在用户界面设计中扮演着重要角色,它允许...

    bat 遍历文件,复制删除功能

    假设我们要将`source_folder`目录下的所有文件复制到`destination_folder`,可以这样写: ```batch @echo off for /R %i in (*) do ( copy %i destination_folder\ ) ``` 而"删除文件"的功能,则可以通过`del`...

    winform 文件操作 WM6.0 c# 遍历文件夹、复制文件、删除文件、复制文件内容

    本教程将详细介绍如何在这样的环境下遍历文件夹、复制文件、删除文件以及复制文件内容。 一、遍历文件夹 在C#中,我们可以使用`System.IO`命名空间下的`DirectoryInfo`类来遍历文件夹。以下是一个简单的示例: ``...

    VC写的文件管理系统 可以复制 搜索 删除等等

    - 如何使用多线程技术优化文件复制和删除操作,避免阻塞主线程。 总的来说,这个VC++编写的文件管理系统虽然功能简单,但对于学习C++编程、MFC库和Windows API的使用,特别是文件操作和用户界面设计,都是一个不错...

    批处理命令- 复制、删除

    本文详细介绍了批处理命令中关于文件复制和删除的核心概念,并通过具体案例分析展示了如何利用这些命令来构建自动化任务。掌握了这些基本技巧后,读者可以尝试根据自己的实际需求设计更为复杂的批处理脚本,实现各种...

    MFC 文件操作,文件复制删除创建

    本篇文章将深入探讨如何利用MFC进行文件的复制、删除和创建。 首先,让我们了解一下MFC中的关键类: 1. **CFile**:这是MFC中处理文件的基本类,提供了打开、读取、写入和关闭文件的功能。它封装了Windows API的...

    一个强制复制和删除文件的工具

    1. 文件复制:能够检测并处理文件占用情况,智能关闭相关进程,使得复制过程顺利进行。 2. 文件删除:具备提升权限的能力,可以删除受保护或被占用的文件。 3. 安全模式操作:在系统启动时以安全模式运行,避开文件...

    c++编程之文件的改名复制移动删除和属性设置

    `CopyFile`函数用于将一个文件复制到另一个位置。函数原型如下: ```cpp BOOL CopyFile( LPCTSTR lpExistingFileName, // 源文件名 LPCTSTR lpNewFileName, // 目标文件名 BOOL bFailIfExists // 如果目标文件已...

    Windows下C语言实现文件、文件夹的复制删除命令

    总之,Windows下使用C语言实现文件和文件夹的复制删除命令是一个综合性的任务,涉及到文件系统操作、通配符处理、目录树遍历、用户交互以及错误处理等多个方面。通过实践,开发者可以增强对操作系统API的掌握,提升...

    批量复制文件并自动删除重复文件

    批量复制文件并自动删除重复文件是一项实用技能,可以提高工作效率,避免磁盘空间浪费。本篇将详细讲解如何实现这一功能,并重点关注`foreach`循环在其中的作用。 首先,我们需要理解`foreach`循环在编程中的基本...

    文件快速复制移动删除同步工具

    在IT领域,文件管理是日常工作中不可或缺的一部分,尤其是在大数据量的场景下,高效地复制、删除、移动和同步文件显得尤为重要。"文件快速复制移动删除同步工具"正是为解决这一需求而设计的专业软件。本工具相比...

    VC+移动,复制,删除文件

    ### 三、文件复制:CopyFile函数 #### 实现原理: ```cpp bool CopyFile(char *pTo, char *pFrom) { SHFILEOPSTRUCT FileOp = {0}; FileOp.fFlags = FOF_NOCONFIRMATION | FOF_NOCONFIRMMKDIR; FileOp.pFrom = p...

    bat批量操作复制、删除、移动等

    本主题将深入讲解如何利用BAT批处理进行文件的复制、删除和移动等操作。 首先,让我们来看看标题和描述中提到的几个关键知识点: 1. **批量筛选**:在批处理中,我们可以通过`for`循环配合通配符(如`*`和`?`)来...

    文件创建,复制,删除代码

    文件复制通常涉及到将一个源文件的内容完整地复制到另一个目标位置,这可以通过`FileInfo`类的`CopyTo()`方法实现。该方法接收一个参数,即目标文件的完整路径。 ```csharp public FileInfo CopyTo(string ...

    MFC文件复制删除,进度条显示文件复制进度,同时显示百分比

    总的来说,MFC中实现文件复制、删除以及进度条显示的关键在于使用正确的类和API函数,同时结合回调函数来实时更新进度信息。这样的代码设计既保证了用户体验,又确保了操作的透明性。在实际开发中,应根据项目需求...

    新建、删除、复制、移动文件

    文件操作是计算机科学和信息技术中的一种基本操作,涉及到文件的创建、删除、复制和移动等基本操作。下面我们将详细介绍文件操作的基础知识。 一、新建文件和目录 新建文件和目录是文件操作的基本功能。通过使用...

    文件查找打开保存,读写,复制删除重命名

    ### 文件查找、打开保存、读写、复制删除与重命名——VC/MFC 文件操作详解 #### 一、文件查找 在进行文件操作之前,我们往往需要先确认目标文件是否存在。在MFC中,`CFileFind` 类是专门用于文件查找的工具。下面...

    文件的移动、删除和复制

    可实现文件的移动、复制和删除的源代码,方便使用

Global site tag (gtag.js) - Google Analytics