zoukankan      html  css  js  c++  java
  • java课程课后作业05之动手动脑

    一.使用Files. walkFileTree()找出指定文件夹下所有大于指定大小(比如1M)的文件

    此代码没有使用walkfiletree,两者的差别在于walkfiletree在遍历文件的时候有一个遍历行为控制器——FileVisitor,里面定义了4个方法用来指定当你访问一个节点之前、之中、之后、失败时应该采取什么行动

        public static void main(String[] args) {
            // TODO Auto-generated method stub
            File dir = new File("C:\Users\SuperMan\download");
            File[] files=dir.listFiles(); 
             for(int i=0;i<files.length;i++)  
                {
                 if(files[i].isFile())  
                     {
                     if(files[i].length()>83886080)
                         System.out.println(files[i]+"的大小:"+files[i].length());  
                     }
                }
        }

    四个方法分别是:

    FileVisitResult preVisitDirectory(T dir, BasicFileAttributes attrs) // 访问一个目录前要干啥
            throws IOException;
        
        FileVisitResult postVisitDirectory(T dir, IOException exc) // 访问一个目录后要干啥
                throws IOException;
     
        FileVisitResult visitFile(T file, BasicFileAttributes attrs) // 正在访问一个文件时要干啥
            throws IOException;
        
        FileVisitResult visitFileFailed(T file, IOException exc) // 访问一个文件失败时要干啥
            throws IOException;

    二.使用Files. walkFileTree()找出指定文件夹下所有扩展名为.txt和.java的文件

    方法:利用toString方法将文件名转换成String类型,然后再利用indexOf方法比较是否包含".java"或者".txt"文件。

              public FileVisitResult visitFile(Path file, BasicFileAttributes attrs) {
    //              if(attrs.size()>83886080)
    //                  System.out.format("%s [File,  Size: %s  bytes]%n", file, attrs.size());
                  if(file.toString().indexOf(".java")!=-1)
                      System.out.format("%s [File,  Size: %s  bytes]%n", file, attrs.size());
    
                      
                return CONTINUE;
              }

    三.使用Files. walkFileTree()找出指定文件夹下所有包容指定字符串的txt文件

    思路:按照第二个的方法,先找出txt文件,然后再搜寻是否具有指定的字符串

  • 相关阅读:
    [转]面向接口编程详解(二)——编程实例
    [转]面向接口编程详解(一)——思想基础
    [转] LINQ to SQL快速上手 step by step
    Java备份MySQl数据库,并备份图片数据
    用密码密码拦截
    引用 MySQL集群:主从数据库配置 实现查询负载
    Oracle 对表操作 提示:资源正忙,要求指定nowait
    Jquery一款非好的图片轮换效果
    CodeBlocks集成ObjectiveC开发 Windows下学习ObjectiveC
    查询指定库中所有表
  • 原文地址:https://www.cnblogs.com/heiyang/p/9982778.html
Copyright © 2011-2022 走看看