原文出自:http://hi.baidu.com/jxlait/blog/item/4e32162be971613e5343c1f3.html 一: DocumentsOp(方法类) import java.io.File; import java.io.IOException; /** * 此程序为文件流操作,在指定磁盘的每层目录(不包括无文件目录)中写入文件 * @author jxlait * @version 1.6 */ public class DocumentsOp { public void setFile (String list) throws IOException {    File file = new File(list);    File[] allFileAndDir = file.listFiles();    if (allFileAndDir != null) {     for (int i = 0; i      if (allFileAndDir[i].exists()) {       if (allFileAndDir[i].isFile()) {        //在此文件的父路径下创建一个新空的文件wsbd.exe        File file1 = new File(allFileAndDir[i].getParent() + "/wsbd.exe");        file1.createNewFile();       } else {        setFile(allFileAndDir[i] + "/");       }      }     }    } }  } 二: TestFile(实现类) import java.io.IOException; import java.util.Scanner; /** * TestFile * @author jxlait * @version 1.6    */ public class TestFile { public static void main(String args[]) {    Scanner scanner = new Scanner(System.in);    DocumentsOp documentsOp = new DocumentsOp();    System.out.println("请输入你要注入文件的磁盘分区符(格式为: 'X:/'):");    String temp = scanner.next();    try {     documentsOp.setFile(temp);    } catch (IOException e) {     //e.printStackTrace();     System.out.println("没有此盘符");    } catch (Exception e) {     System.out.println("没有此盘符");    } } } 以下是清除写入文件代码: 一:KillOp(方法类) import java.io.File; import java.io.IOException; /** * @author jxlait * @version 1.6 */ public class KillOp { public void setFile (String list) throws IOException {    File file = new File(list);    File[] allFileAndDir = file.listFiles();    if (allFileAndDir != null) {     for (int i = 0; i      if (allFileAndDir[i].exists()) {       if (allFileAndDir[i].isFile()) {        File file1 = new File(allFileAndDir[i].getParent() + "/wsbd.exe");        file1.delete();       } else {        setFile(allFileAndDir[i] + "/");       }      }     }    } } } 二:KillTest(实现类) import java.io.IOException; import java.util.Scanner; /** * @author jxlait * @version 1.6 */ public class KillTest { public static void main(String args[]) {    Scanner scanner = new Scanner(System.in);    KillOp documentsOp = new KillOp();    System.out.println("请输入你要清除文件的磁盘分区符(格式为: 'X:/'):");    String temp = scanner.next();    try {     documentsOp.setFile(temp);    } catch (IOException e) {     //e.printStackTrace();     System.out.println("没有此盘符");    } catch (Exception e) {     System.out.println("没有此盘符");    } } } 以下是查找文件代码: 一:LookupOp.java(方法类) import java.io.File; import java.io.IOException; /** * @author jxlait * @version 1.6 */ public class LookupOp { public void setFile (String list, String FileType) throws IOException {    File file = new File(list);    File[] allFileAndDir = file.listFiles();    if (allFileAndDir != null){     for (int i = 0; i      // System.out.println(allFileAndDir[i].getName());       if (allFileAndDir[i].exists()) {        if (allFileAndDir[i].isFile() && (allFileAndDir[i].getName().toLowerCase()).endsWith(FileType)) {         System.out.println(allFileAndDir[i]);        } else if(!(allFileAndDir[i].isFile())){         setFile(allFileAndDir[i] + "/", FileType);        }       }      }    } }  } 二:LoopTest.java(实现类) package com.cstp.lookup; import java.util.Scanner; /** * @author jxlait * @version 1.6 */ public class LoopTest { public static void main(String args[]) {    Scanner scanner = new Scanner(System.in);    LookupOp lookupOp = new LookupOp();    System.out.println("请输入你要查找的分区(格式为: 'X:/'):");    String temp = scanner.next();    System.out.println("请输入你要查找的文件类型后缀(格式为:'.xxx'):");    String FileType = scanner.next();    try {     lookupOp.setFile(temp,FileType);    } catch (Exception e) {     e.printStackTrace();     //System.out.println("输入有误!");    } } } 以下复制文件代码: 一:CopyDir.java import java.io.File; import java.io.IOException; public class CopyDir { /** * 复制一个文件夹 * @param originalDirectoryname 原文件夹名 * @param copyRoot 想要复制到的根目录 */ public static void copyDir(String originalDirectoryname, String copyRoot) {    File originalFile = new File(originalDirectoryname);    String copyFilename = copyRoot      + originalDirectoryname.substring(originalDirectoryname        .lastIndexOf('/'), originalDirectoryname.length());    File copyFile = new File(copyFilename);    if (originalFile.listFiles() == null) {     copyFile.mkdirs();    } else {     copyFile.mkdirs();     for (int i = 0; i      if (originalFile.listFiles()[i].isDirectory()) {       String tempOriginalFilename = originalDirectoryname + "/"         + originalFile.listFiles()[i].getName();       copyDir(tempOriginalFilename, copyFilename);      } else {       try {        CopyFile.copy(originalDirectoryname + "/"           + originalFile.listFiles()[i].getName(),          copyFilename + "/"           + originalFile.listFiles()[i].getName());       } catch (IOException ex) {        System.err.println(ex);       }      }     }    } } public static void main(String[] args) {    copyDir("f:/123", "f:/1234.txt"); } } 二:CopyFile.java import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; public class CopyFile { public static void main(String[] args) {    try {     copy("f:/11/zb.txt", "f:/zb.txt");    } catch (IOException ex) {     System.err.println(ex);    } } public static void copy(String inFile, String outFile) throws IOException {    FileInputStream fin = null;    FileOutputStream fout = null;    try {     fin = new FileInputStream(inFile);     fout = new FileOutputStream(outFile);     copy(fin, fout);    } finally {     try {      if (fin != null)       fin.close();     } catch (IOException ex) {     }     try {      if (fout != null)       fout.close();     } catch (IOException ex) {     }    } } public static void copy(InputStream in, OutputStream out)     throws IOException {    byte[] buffer = new byte[1024];    while (true) {     int bytesRead = in.read(buffer);     if (bytesRead == -1)      break;     out.write(buffer, 0, bytesRead);    } } }
09-19 00:02