File类使用的三个案例
来源:互联网 发布:java当前类属性的类型 编辑:程序博客网 时间:2024/05/16 13:55
- 案例一:列出指定目录中的所有文件,包括子文件夹中的文件
import java.io.File;public class FilesDemo { public static void main(String[] args) { /*案例一 *需求:列出指定目录中的所有文件,包括子文件夹中的文件 *方法:递归算法(recursion) */ File file=new File("E:/线性代数课件"); listAllFile(file); } private static void listAllFile(File f) { File[] fs=f.listFiles(); for (File file : fs) { System.out.println(file); if(file.isDirectory()){ listAllFile(file);//递归算法 } } }}
- 案例二:列出文件的分层结构(菜单结构)
import java.io.File;import java.util.ArrayList;import java.util.Collections;import java.util.List;public class FilesDemo { public static void main(String[] args) { /*案例二 *需求:列出文件的分层结构(菜单结构) *输出:美工部>抠图>其他素材 */ File file=new File("E:/美工部/抠图/其他素材/背景1.jpg"); List<String> fileNames=new ArrayList<>(); listAllFile(file,fileNames); System.out.println(fileNames);//[其他素材, 抠图, 美工部] Collections.reverse(fileNames);//翻转list中的元素 System.out.println(fileNames);// [美工部, 抠图, 其他素材] StringBuilder sb=new StringBuilder(60);//拼接 for (String name : fileNames) {//迭代 sb.append(name).append(">"); } sb.deleteCharAt(sb.length()-1); System.out.println(sb);//美工部>抠图>其他素材 } private static void listAllFile(File f,List<String> l) { if(!"".equals(f.getParentFile().getName())){ l.add(f.getParentFile().getName()); } if(f.getParentFile().getParentFile()!=null){ listAllFile(f.getParentFile(),l);//递归算法 } }}
- 案例三:批量修改文件名
import java.io.File;public class FilesDemo { public static void main(String[] args) { /*案例三 *需求:批量修改文件名 *如在C:\123路径下,有以下文件: *java代码-Eclipse-01.txt *java代码-Eclipse-02.txt *java代码-Eclipse-03.txt *java代码-Eclipse-04.txt *现需要截取掉相同部分“java代码-Eclipse-” */ File dir=new File("C:/123"); File[] fs=dir.listFiles(); String s="java代码-Eclipse-"; for (File file : fs) { if(file.getName().contains(s)){//判断是否包含该文件 //如果包含用“”空字符代替 String newName=file.getName().replace(s, ""); file.renameTo(new File(dir,newName)); } } /*输出: 01.txt 02.txt 03.txt 04.txt*/ } }
- 案例四:文件过滤器
import java.io.File;import java.io.FilenameFilter;public class FilesDemo { public static void main(String[] args) { /*案例四:文件过滤器 *需求:过滤掉指定文件 */ File dir=new File("C:/123"); //File[] listFiles(FilenameFilter filter) //返回表示的抽象路径名的文件和目录的目录,这个抽象路径名满足指定过滤器表示数组。 //Interface FilenameFilter //实现FilenameFilter接口,编写过滤规则 File[] fs=dir.listFiles(new FilenameFilter(){ @Override public boolean accept(File dir, String name) { //只打印出以“.txt”结尾,并且是文件的资源 return new File(dir,name).isFile()&&name.endsWith(".txt"); } }); for (File file : fs) { System.out.println(file); } } }
阅读全文
1 0
- File类使用的三个案例
- 三个生产环境中使用Docker的案例
- File类和案例
- 微软电子商务的三个成功案例
- 值得膜拜的三个数据分析案例
- html使用css让文字超出部分用省略号三个点显示的方法案例
- File类的使用
- File类的使用
- File类的使用
- file类的常见方法以及案例解释
- file获取路径的三个方法
- TelephonyManager类的使用案例
- C++类的使用案例
- 使用类求出三个长方体的体积
- 使用上面三个类的代码
- File类的简单使用
- File类的使用练习
- File类的简单使用
- 第3章 微分中值定理与导数应用
- python里怎么样判断文件名和文件实例对象
- codeforces 3-A. Shortest path of the king(暴力)
- 聚合支付
- Navicat Premium 查看某几个表的ER图(模型图)
- File类使用的三个案例
- Redis集群方案
- angular2的shell命令
- 线程同步 ----互斥锁
- 表单提交多个对象
- 清华大学计算机系96级 那些缔造中国互联网的男孩们
- 学习笔记-------spring 事务控制
- java EE技术体系——CLF平台API开发注意事项(2)——后端测试
- 字符串指针与字符数组