题目:编写一个应用程序,输入一个目录和一个文件类型,显示该目录下符合该类型的所有文件。之后,将这些文件中的某一个文件剪切到另外一个目录中。
代码:
package edu.ccut; import java.io.*; import java.util.*; public class Text { public static void main(String[] args) { // TODO Auto-generated method stub System.out.println("请输入一个目录"); Scanner input= new Scanner(System.in); String str = input.next(); File dir = new File(str); System.out.println("输入文件类型"); Scanner input2 = new Scanner(System.in); String aa = input2.next(); FileType ft= new FileType(aa); String fileList[] = dir.list(ft); System.out.println("目录下有"+fileList.length+"个文件"); for(int i =0;i<fileList.length;i++) { System.out.println(fileList[i]); } System.out.println("输入要剪切的文件"); Scanner input3 = new Scanner(System.in); String str1 = input3.next(); String f = str+"\"+str1; File dir1 = new File(f); String FilePath = "C:\java运行"+"\"+str1; try { BufferedReader in = new BufferedReader(new FileReader(f)); try { BufferedWriter writer = new BufferedWriter(new FileWriter(FilePath)); String line = null; while((line=in.readLine())!=null) { System.out.println(line); writer.write(line); } }catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } catch (FileNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } dir1.delete(); } } class FileType implements FilenameFilter{ String type; FileType(String type){ this.type = type; } public boolean accept(File dir, String name) { return name.endsWith(type); } }
运行结果: