定义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);
java一个类可以有多个构造方法,根据传参类型和个数来匹配执行哪个构造方法。public class Member { public Member(){  ...
Java5 引入了一种主要用于数组的增强型 for 循环,类似js中的for inpublic class Member { public static void main(String[]&...
java判断字符是否是一个字母System.out.println(Character.isLetter('a'));java判断字符是否是一个数字System.out.println(Character.isDigit('0'));java判断字符是否是一个空白Sy...
java stringBuffer(1).stringBuffer和stringBuilder区别stringBuffer是线程安全的,stringBuilder速度更快(2).简单的stringBuffer例子StringBuffer sBuffer = new&nb...
pattern表示正则表达式,接收正则表达式作为参数例子:String content = "my name is gaojiufeng"; String pattern = "....
java命令行传参,java从命令行接收参数public static void main(String[] args) { for (int i = 0;&nb...