读取某个文件夹下指定前缀和后缀的文件,并且返回指定文件的功能性Demo
2017-03-02 12:46
477 查看
(尊重劳动成果,转载请注明出处:http://blog.csdn.net/qq_25827845/article/details/59488796冷血之心的博客)
实现功能:
读取指定路径的文件夹,读取其中的文件
选择有指定后缀和前缀的文件
比较去除后缀和前缀之后剩余部分的大小
返回指定文件
比如说有这样一个文件夹:
执行代码后结果如下:
代码如下:package com.ywq;
import java.io.*;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
public class Client {
public static void main(String[] args) {
try {
String targetFile = getFile("D:/ywq","文本",".txt");
System.out.println(targetFile);
} catch (IOException e) {
e.printStackTrace();
}
}
public static String getFile(String filepath, String prefix, String suffix) throws FileNotFoundException, IOException {
filepath = checkFilePathEnd(filepath);
File file = new File(filepath);
Integer maxNum = null;
if (!file.isDirectory()) {
return null;
}
List<Integer> numList = new ArrayList<Integer>();
String[] filelist = file.list();
for (int i = 0; i < filelist.length; i++) {
File readfile = new File(filepath + filelist[i]);
Integer num = getNum(readfile, prefix, suffix);
if (num!=null) {
numList.add(num);
}
}
Collections.sort(numList);
if (!numList.isEmpty()) {
maxNum = numList.get(numList.size()-1);
}else{
return null;
}
return prefix+maxNum+suffix;
}
public static String checkFilePathEnd(String filepath){
if(!filepath.endsWith("/"))
filepath =filepath + "/";
return filepath;
}
public static Integer getNum(File readfile, String prefix, String suffix ){
Integer number = null;
if (!readfile.isDirectory() && readfile.getName().endsWith(suffix)
&& readfile.getName().startsWith(prefix)) {
String num = readfile.getName().substring(prefix.length(),
readfile.getName().length()-suffix.length());
try {
number = Integer.parseInt(num);
} catch (Exception e) {
return number;
}
}
return number;
}
}
代码没有加注释,感觉函数命名已经很清楚了。大家加油~
如果对你有帮助,记得点赞哦~欢迎大家关注我的博客,可以进群366533258一起交流学习哦~
相关文章推荐
- 读取指定文件夹下的全部文件,可通过正则进行过滤,返回文件路径数组 -- 基于node的一个函数
- [ASP] 使用asp读取指定文件夹的文件列表(返回xml)
- 从文件夹中读取子文件夹内带有指定后缀如.bmp文件的C++实现,并读取子文件夹后缀数字
- scala 递归读取文件夹下所有的指定后缀的文件
- C++ Demo 001: 读取一个从命令行指定的文件,输出文件内容到显示器,并且给每一行输出添加一个行号
- 打开文件夹并且选中指定的文件的通用函数
- 读取指定文件夹的所有文件+_finddata_t的使用
- 遍历读取指定文件夹下指定类型的所有文件
- 遍历指定文件夹的指定格式的文件并且copy到指定的文件夹下面
- matlab中怎样读取一个文件夹里面的指定类型的所有文件的名称?
- 返回一个指定文件夹下的所有文件
- 获取文件夹大小并且显示为易于读取的文件单位
- 打开文件夹并且选中指定的文件的通用函数
- Java读取文件夹下的指定类型的文件(包含子文件夹)
- 打开文件夹并且选中指定的文件的通用函数
- 如何读取某个指定文件夹下所有文件,并筛选出其中的图片文件(jpeg,bmp)展示出来。
- ASP 按修改时间读取文件夹中文件并且排序
- php读取指定目录文件夹下所有文件夹及文件的方法
- vb-复制ie临时文件夹下所有mp3文件到指定目录,并且将utf8编码转换过来
- 遍历文件夹 非递归 只收集指定后缀的文件