JAVA文件操作

import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.nio.channels.FileChannel; public class DealFile { /** * 删除文件 * @param filePathAndName String 文件路径及名称 * @param fileContent String * @return boolean */ public void delFile(String filePathAndName) { try { String filePath = filePathAndName; filePath = filePath.toString(); java.io.File myDelFile = new java.io.File(filePath); myDelFile.delete(); } catch (Exception e) { System.out.println("删除文件操作出错"); e.printStackTrace(); } } /** * 删除文件夹 * @param path String 文件夹路径 */ public static void delAllFile(String path){ File file = new File(path); File[] filelist = file.listFiles(); for(int i=0;i<filelist.length;i++){ if(!filelist[i].isDirectory()){ filelist[i].delete(); System.out.println("文件:"+filelist[i].getName()+"已删除!"); }else{ delAllFile(path+"/"+filelist[i].getName()); } } file.delete(); System.out.println("文件夹:"+file.getName()+"已删除!"); } /** * 复制单个文件 * @param fromfile String 原文件路径 * @param tofile String 复制后路径 * @return boolean */ public static void copyfile(String fromfile,String tofile) throws IOException{ FileInputStream fis = new FileInputStream(fromfile); FileOutputStream fos = new FileOutputStream(tofile); FileChannel fcin = fis.getChannel(); FileChannel fcout = fos.getChannel(); fcin.transferTo(0, fcin.size(), fcout); fcin.close(); fcout.close(); fis.close(); fos.close(); } /** * 复制整个文件夹内容 * @param srcDirectory String 原文件路径 * @param srcDirectory String 复制后路径 * @return boolean */ public static void copyDirectory(String srcDirectory, String destDirectory) throws java.io.FileNotFoundException, java.io.IOException { // 得到目录下的文件和目录数组 File srcDir = new File(srcDirectory); File[] fileList = srcDir.listFiles();// 循环处理数组 for (int i = 0; i < fileList.length; i++) { if (fileList[i].isFile()) {// 数组中的对象为文件 File descDir = new File(destDirectory); // 如果目标目录不存在,创建目标目录 if (!descDir.exists()) { descDir.mkdir();// 复制文件到目标目录 } copyfile(srcDirectory + "/" + fileList[i].getName(),destDirectory + "/" + fileList[i].getName()); } else { // 数组中的对象为目录 File subDir = new File(destDirectory + "/" + fileList[i].getName()); if (!subDir.exists()) { subDir.mkdir(); // 如果该子目录不存在就创建(其中也包含了对多级目录的处理) } copyDirectory(srcDirectory + "/" + fileList[i].getName(), destDirectory + "/" + fileList[i].getName()); // 递归处理子目录 } } } public static void main(String[] args) throws IOException { DealFile.copyDirectory("e:/Test1", "f:/test"); } }

你可能感兴趣的:(JAVA文件操作)