第14周作业

一、题目

编写一个应用程序,输入一个目录和一个文件类型,显示该目录下符合该类型的所有文件。之后,将这些文件中的某一个文件剪切到另外一个目录中。

二、代码

package com.hou1208;
/**
 * 输入一个目录和一个文件类型,
 * 显示该目录下符合该类型的所有文件。
 * 将这些文件中的某一个文件剪切到另外一个目录中
 */
import java.io.*;
import java.util.*;
class FileAccept implements FilenameFilter{
    String type;
    FileAccept(String type){
        this.type = type;
    }
    public boolean accept(File Fname, String name) {
        return name.endsWith(type);
    }
    
}
public class Test {
    public static void main(String[] args) {
        System.out.println("1.输入一个目录:");
        Scanner input = new Scanner(System.in); 
        String s = input.next();
        File Fname = new File(s);                        
        System.out.println("2.输入文件类型:");
        Scanner reader = new Scanner(System.in); 
        String k = reader.next();
        FileAccept count = new FileAccept(k);
        String fileList[] = Fname.list(count);
        System.out.println(s+"-目录下有"+fileList.length+"个文件");
        for(int i =0;i<fileList.length;i++) {
            System.out.println(fileList[i]);
        }        
        System.out.println("3.输入要剪切的文件");
        Scanner reader2 = new Scanner(System.in);        
        String X = reader2.next();    
        String f = s+"\\"+X;        
        File Fname1 = new File(f);
        String FilePath = "D:\\JAVA\\001"+"\\"+X;    
        try(BufferedReader close1 = new BufferedReader(new FileReader(f));
            BufferedWriter writer = new BufferedWriter(new FileWriter(FilePath));    
            ) {        
            String line = null;
            while((line=close1.readLine())!=null) {
                System.out.println(line);
                writer.write(line);
            }
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }
        System.out.println("--被剪切的"+X+"文件"+"已经被剪切到另外一个目录!");
        Fname1.delete();                
    }
}

三、截图

posted @ 2019-12-08 22:13  侯英龙20194669  阅读(138)  评论(0编辑  收藏  举报