定义1个工具类:
public class FileTools { /** * 获取文件夹下的所有文件 * * @param directory * @return */ public static List<File> getAllFilesInAFolder(File directory) { // 保存全部文件的List(用于返回) List<File> fileList = new ArrayList<>(); // 读取文件夹下的全部文件 File[] files = directory.listFiles(); // 循环处理此文件夹的内容 if (files != null) { for (File file : files) { // 如果内容是文件则保存 if (file.isFile()) { fileList.add(file); } else { // 如果内容是文件夹递归获取文件 List<File> subDirectoryFiles = getAllFilesInAFolder(file); fileList.addAll(subDirectoryFiles); } } } // 返回 return fileList; } /** * 格式化文件路径为操作系统标准路径 * * @param filePath * @return */ public static String formatFileSeparator(String filePath) { String separator = File.separator; return filePath.replace("\\", separator).replace("/", separator); } /** * 格式化文件路径 * @param filePath * @return */ public static String formatFilePath(String filePath) { String separator = File.separator; filePath = formatFileSeparator(filePath); if (!filePath.endsWith(separator)) { filePath = filePath.concat(separator); } return filePath; } }
调用工具类例子:
// 读取目录全部文件 String path = "/temp/"; path = FileTools.formatFilePath(path); File directory = new File(path); List<File> files = FileTools.getAllFilesInAFolder(directory);
public class test { public static void main(String[] args) { &...
Java5 引入了一种主要用于数组的增强型 for 循环,类似js中的for inpublic class Member { public static void main(String[]&...
在java中字符串属于对象,刚开始我就疑惑为什么int char等类型都是小写,结果String是大写,java太反人类,后来才知道String是对象。(1).java创建字符串String text = "net"; String tex...
(7).java方法重载一个类的两个方法拥有相同的名字,但是有不同的参数列表,叫做方法重载,例如public static int sum(int a, int b) { retur...
java命令行传参,java从命令行接收参数public static void main(String[] args) { for (int i = 0;&nb...
java析构函数finalize()java进行垃圾回收时会调用finalize(),用户可以用它来关闭已经打开的资源句柄等操作,具体场景比较多。和php的析构函数__destruct差不多但是这个方法在最新版本的java中提示已经废弃了,好像java9中干掉了它...