-
用java删除文件夹里的所有文件
当前部分转载于: (https://www.cnblogs.com/charleshuang/articles/1427615.html) import java.io.File; public class Test { public static void main(String args[]){ Test t = new Test(); delFolder("c:/bb"); System.out.println("deleted"); } //删除指定文件夹下所有文件 //param path 文件夹完整绝对路径 public static boolean delAllFile(String path) { boolean flag = false; File file = new File(path); if (!file.exists()) { return flag; } if (!file.isDirectory()) { return flag; } String[] tempList = file.list(); File temp = null; for (int i = 0; i < tempList.length; i++) { if (path.endsWith(File.separator)) { temp = new File(path + tempList[i]); } else { temp = new File(path + File.separator + tempList[i]); } if (temp.isFile()) { temp.delete(); } if (temp.isDirectory()) { delAllFile(path + "/" + tempList[i]);//先删除文件夹里面的文件 delFolder(path + "/" + tempList[i]);//再删除空文件夹 flag = true; } } return flag; } public static void delFolder(String folderPath) { try { delAllFile(folderPath); //删除完里面所有内容 String filePath = folderPath; filePath = filePath.toString(); java.io.File myFilePath = new java.io.File(filePath); myFilePath.delete(); //删除空文件夹 } catch (Exception e) { e.printStackTrace(); } }
-
判断文件是否存在 -->不存在 -->创建 --> 写入文本
判断文件是否存在 -->不存在 -->创建 String filePaths = fileUrl + subject + ".txt"; //路劲 File file = new File(filePaths); if (!file.exists()) { // 不存在返回 false // 判断文件是否存在-->不存在-->创建文件 file.createNewFile(); } 将文本写入文件中 //(filePaths)txt路劲, (bodyText2)要写入的文本 boolean writeTxtFile = writeTxtFile(filePaths, bodyText2); //写入 //filePath:文件路径,content :内容 public static boolean writeTxtFile(String filePath, String content) throws Exception { boolean flag = false; FileOutputStream fileOutputStream = null; File file = new File(filePath); try { fileOutputStream = new FileOutputStream(file); fileOutputStream.write(content.getBytes("GBK")); fileOutputStream.close(); flag = true; } catch (Exception e) { System.out.println("文件写入失败!" + e); } return flag; }
-
递归删除文件,及子文件
-
/** * 删除目录(文件夹)以及目录下的文件 * @param sPath 被删除目录的文件路径 * @return 目录删除成功返回true,否则返回false */ public boolean deleteDirectory(String sPath) { // 如果sPath不以文件分隔符结尾,自动添加文件分隔符 if (!sPath.endsWith(System.getProperty("file.separator"))) { sPath = sPath + System.getProperty("file.separator"); } File dirFile = new File(sPath); // 如果dir对应的文件不存在,或者不是一个目录,则退出 if (!dirFile.exists() || !dirFile.isDirectory()) { return false; } boolean flag = true; // 删除文件夹下的所有文件(包括子目录) File[] files = dirFile.listFiles(); for (int i = 0; i < files.length; i++) { // 删除子文件 if (files[i].isFile()) { flag = deleteFile(files[i].getAbsolutePath()); if (!flag) break; } // 删除子目录 else { flag = deleteDirectory(files[i].getAbsolutePath()); if (!flag) break; } } if (!flag) return false; // 删除当前目录 if (dirFile.delete()) { return true; } else { return false; } }
-
删除单个文件
/** * 删除单个文件 * @param sPath被删除文件的文件名 * @return 单个文件删除成功返回true,否则返回false */ public boolean deleteFile(String sPath) { boolean flag = false; File file = new File(sPath); // 路径为文件且不为空则进行删除 if (file.isFile() && file.exists()) { file.delete(); flag = true; } return flag; }
-
在本地服务器进行转移切换,转移(类似于剪切无需删除)
/** * 在本地服务器进行转移切换,转移(类似于剪切无需删除) * @param fileURL(默认位置) 文件 * @param directory 要转移的位置 */ public static void mobileFile(String fileURL, String directory) { String urlFile = "E:\\Email\\"; try { // 当前文件的所在位置+当前文件名称 // File fDir=new File(System.getProperty("file.separator")); // //System.getProperty("file.separator")表示根目录,比如现在就表示在D盘下。 File afile = new File(fileURL); // 当前本地服务器默认位置+将要转移的位置+文件名称 File afiles = null; if (directory == null) { afiles = new File(urlFile + System.getProperty("file.separator") + afile.getName()); } else { afiles = new File(urlFile + System.getProperty("file.separator") + directory + System.getProperty("file.separator") + afile.getName()); } System.out.println(afiles); // 判断文件是否存在,如果存在删除 if (afiles.exists()) { afiles.delete(); } // String filePath = fileUrl + sPath // +System.getProperty("file.separator")+ originalFilename; // // 转存文件本地服务器 // excelFile.transferTo(new File(filePath)); // FileUtils.copyFile(afile, afiles); System.out.println("请查看文件是否以跟换位置!!!-->1140"); if (afile.renameTo(afiles)) { System.out.println("本地转移成功--ok!-->1142"); } else { System.out.println("本地转移失败--No!-->1144"); } } catch (Exception e) { e.printStackTrace(); } }
-
查看当前目录下子文件
private String vcDocName; // 文档名称 private Date dAddTime; // 新建时间 private String sizeFile; // 文件大小 Set,Get 方法:省略 public List<TCompDoc> documentManagementTreeSon(String fileUrl) throws Exception { List<TCompDoc> listFile = new ArrayList<TCompDoc>(); File file = new File(fileUrl); File[] fList = file.listFiles(); // 输出所有文件的名字 for (File f : fList) { TCompDoc fileAttribute = new TCompDoc(); // 是文件吗? if (f.isFile()) { String sizeFile = ""; // 文件大小 long size = f.length(); long kb = 1024; long mb = kb * 1024; long gb = mb * 1024; if (size >= gb) { sizeFile = String.valueOf(String.format("%.1f GB", (float) size / gb)); } else if (size >= mb) { float f1 = (float) size / mb; sizeFile = String.valueOf(String.format(f1 > 100 ? "%.0f MB" : "%.1f1 MB", f1)); } else if (size >= kb) { float f2 = (float) size / kb; sizeFile = String.valueOf(String.format(f2 > 100 ? "%.0f KB" : "%.1f2 KB", f2)); } else sizeFile = String.valueOf(String.format("%d B", size)); // 将查询到本地的文件名称 add到 List集合中 // 文件修改时间 Date date = new Date(f.lastModified()); fileAttribute.setdAddTime(date); // 是文件,就输出它的名字 fileAttribute.setVcDocName(f.getName()); // 文件大小 fileAttribute.setSizeFile(sizeFile); listFile.add(fileAttribute); } // 输出 所有文件夹的名字 if (f.isDirectory()) { fileAttribute.setVcDocName(f.getName()); // 文件大小 fileAttribute.setSizeFile("---"); Date date = new Date(f.lastModified()); fileAttribute.setdAddTime(date); listFile.add(fileAttribute); } } return listFile; }
使用java.io.File来操作文件(删除,替换,覆盖,剪切,查看目录下子文件)
最新推荐文章于 2024-04-17 05:18:29 发布