java文件或目录操作的工具类分享
下文是笔者编写的文件或目录操作的工具类,如下所示
实现思路: 1.实例化一个file对象 2.使用file对象中的方法即可完成对文件或目录的操作例:file操作的工具类分享
import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; public class FileUtil { //复制文件 public static Boolean copyFile(File ofile,String newPath) throws IOException{ FileInputStream in=new FileInputStream(ofile); File file=new File(newPath); if(file.exists()){ return false; } if(!file.getParentFile().exists()){ file.getParentFile().mkdirs(); } file.createNewFile(); FileOutputStream out=new FileOutputStream(file); int c; byte buffer[]=new byte[1024]; while((c=in.read(buffer))!=-1){ for(int i=0;i<c;i++) out.write(buffer[i]); } in.close(); out.close(); return true; } //创建目录 public static Boolean createDir(String path){ File dir=new File(path); if(dir.exists()){ return false; } return dir.mkdirs(); } //删除文件 public static Boolean delFile(String path,String filename){ File file; if (path.endsWith(File.separator)) { file = new File(path+filename); } else { file = new File(path+File.separator+filename); } if(file.exists() && file.isFile() && !file.canExecute()){ return file.delete(); }else{ return false; } } //删除指定目录下所有文件及目录 public static Boolean delDir(String dirPath) { try { delAllFiles(dirPath); File myFilePath = new File(dirPath); return myFilePath.delete(); } catch (Exception e) { e.printStackTrace(); return false; } } //删除指定目录下所有文件 public static boolean delAllFiles(String path) { System.out.println("path:"+path); boolean flag = false; File file = new File(path); if (!file.exists()) { return flag; } if (!file.isDirectory()) { return flag; } File[] files = file.listFiles(); for (File f : files) { if (f.isFile()) { f.delete(); } if (f.isDirectory()) { if (path.endsWith(File.separator)) { delAllFiles(path + f.getName()); delDir(path + f.getName()); } else { delAllFiles(path + File.separator + f.getName()); delDir(path + File.separator + f.getName()); } flag = true; } } return flag; } //只删除子目录 public static Boolean isOnlyChildDir(String path){ File dir=new File(path); if(dir.exists() && dir.isDirectory() && dir.canExecute()){ File[] files=dir.listFiles(); if(files != null && files.length > 1){ return false; }else{ return true; } }else{ return false; } } }
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。