第十四次作业
一、题目
编写一个应用程序,输入一个目录和一个文件类型,显示该目录下符合该类型的所有文件。之后,将这些文件中的某一个文件剪切到另外一个目录中。
二、代码段:
(1)文件目录
import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.File; import java.io.FileNotFoundException; import java.io.FileReader; import java.io.FileWriter; import java.io.FilenameFilter; import java.io.IOException; import java.util.Scanner; class FileType implements FilenameFilter{ String type; FileType(String type){ this.type = type; } public boolean accept(File dir, String name) { return name.endsWith(type); } } public class TestFile { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub System.out.println("输入一个目录"); Scanner reader = new Scanner(System.in); String s = reader.next(); File dir = new File(s); System.out.println("输入文件类型"); Scanner reader2 = new Scanner(System.in); String k = reader2.next(); FileType ft= new FileType(k); String fileList[] = dir.list(ft); System.out.println("目录下有"+fileList.length+"个文件"); for(int i =0;i<fileList.length;i++) { System.out.println(fileList[i]); }
(2)剪切到另一个目录
System.out.println("输入要剪切的文件");
Scanner reader3 = new Scanner(System.in);
String s1 = reader3.next(); //存放文件名
String f = s+"\\"+s1; //前面输入的目录+\+文件名
File dir1 = new File(f);
String FilePath = "D:\\mysql\\zcy"+"\\"+s1; //剪切到的位置
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();
}
三、运行截图
(1)

(2)


浙公网安备 33010602011771号