本地文件/文件夹的各种操作
程序员文章站
2022-07-01 16:55:27
...
/** * 新建目录 * @param dirPath */ public static void mkdir(String dirPath) { File fd = null; try { fd = new File(dirPath + File.separator); if (!fd.exists()) { fd.mkdirs(); } } catch (Exception e) { e.printStackTrace(); } finally { fd = null; } }
/** * 写文件 * @param filePath * @param fileContet * @return */ public static boolean writeToFile(String filePath, Object fileContet) { File file = new File(filePath); if (!file.getParentFile().exists()) { file.getParentFile().mkdirs(); } Writer writer = null; try { writer = new OutputStreamWriter(new FileOutputStream(file), "UTF-8"); writer.write(fileContet.toString()); writer.close(); return true; } catch (IOException e) { e.printStackTrace(); } finally { if (writer != null) { try { writer.close(); } catch (IOException e) { e.printStackTrace(); } } } return false; }
/** * 按行读取文件 * @param filepath */ public void readFlie(String filepath) { BufferedReader br = null; try { br = new BufferedReader(new InputStreamReader(new FileInputStream( filepath))); for (String line = br.readLine(); line != null; line = br .readLine()) { System.out.println(line); } } catch (Exception e) { e.printStackTrace(); } finally { if (br != null) { try { br.close(); } catch (Exception e) { e.printStackTrace(); } } } }
/** * 递归查找判断某个目录下是否存在包含指定字符指定类型的文件 * @param dirPath 需扫描的目录 * @param filetype 文件类型,如“jpg”、“png”等 * @param containStr 包含的特定的字符串 * @return */ public static boolean hasFile(String dirPath, String filetype, String[] containStr) { File srcDir = new File(dirPath); File[] fileList = srcDir.listFiles(); for (File file : fileList) { if (file.isFile()) { if (file.toString().toLowerCase() .endsWith(filetype.toLowerCase())) { boolean isContain = true; for (String str : containStr) { if (!file.toString().contains(str)) { isContain = false; } } if (isContain) { return true; } else { continue; } } } else if (file.isDirectory()) { hasFile(file.toString(), filetype, containStr); } } return false; }
上一篇: 米粉糊茼蒿如何制作,方法其实很简单
下一篇: 全面解读Java NIO工作原理(3)