黑馬程式員-java.io.File類各種檔案操作

來源:互聯網
上載者:User

 

----------------------
android培訓、java培訓、期待與您交流! ----------------------                                  通過這個程式,可以體會到java.io.File類各種檔案的操作:import java.io.*;public class FileOperate {  public FileOperate() {  }  public void newFolder(String folderPath) {    try {      String filePath = folderPath;      filePath = filePath.toString();      java.io.File myFilePath = new java.io.File(filePath);      if (!myFilePath.exists()) {        myFilePath.mkdir();      }    }    catch (Exception e) {      System.out.println("建立目錄操作出錯");      e.printStackTrace();    }  }   public void newFile(String filePathAndName, String fileContent) {    try {      String filePath = filePathAndName;      filePath = filePath.toString();      File myFilePath = new File(filePath);      if (!myFilePath.exists()) {        myFilePath.createNewFile();      }      FileWriter resultFile = new FileWriter(myFilePath);      PrintWriter myFile = new PrintWriter(resultFile);      String strContent = fileContent;      myFile.println(strContent);      resultFile.close();    }    catch (Exception e) {      System.out.println("建立目錄操作出錯");      e.printStackTrace();    }  }   public void delFile(String filePathAndName) {    try {      String filePath = filePathAndName;      filePath = filePath.toString();      java.io.File myDelFile = new java.io.File(filePath);      myDelFile.delete();    }    catch (Exception e) {      System.out.println("刪除檔案操作出錯");      e.printStackTrace();    }  }   public void delFolder(String folderPath) {    try {      delAllFile(folderPath); //刪除完裡面所有內容      String filePath = folderPath;      filePath = filePath.toString();      java.io.File myFilePath = new java.io.File(filePath);      myFilePath.delete(); //刪除空檔案夾    }    catch (Exception e) {      System.out.println("刪除檔案夾操作出錯");      e.printStackTrace();    }  }   public void delAllFile(String path) {    File file = new File(path);    if (!file.exists()) {      return;    }    if (!file.isDirectory()) {      return;    }    String[] tempList = file.list();    File temp = null;    for (int i = 0; i < tempList.length; i++) {      if (path.endsWith(File.separator)) {        temp = new File(path + tempList[i]);      }      else {        temp = new File(path + File.separator + tempList[i]);      }      if (temp.isFile()) {        temp.delete();      }      if (temp.isDirectory()) {        delAllFile(path+"/"+ tempList[i]);//先刪除檔案夾裡面的檔案        delFolder(path+"/"+ tempList[i]);//再刪除空檔案夾      }    }  }   public void copyFile(String oldPath, String newPath) {    try {      int bytesum = 0;      int byteread = 0;      File oldfile = new File(oldPath);      if (oldfile.exists()) { //檔案存在時        InputStream inStream = new FileInputStream(oldPath); //讀入原檔案        FileOutputStream fs = new FileOutputStream(newPath);        byte[] buffer = new byte[1444];        int length;        while ( (byteread = inStream.read(buffer)) != -1) {          bytesum += byteread; //位元組數檔案大小          System.out.println(bytesum);          fs.write(buffer, 0, byteread);        }        inStream.close();      }    }    catch (Exception e) {      System.out.println("複製單個檔案操作出錯");      e.printStackTrace();    }  }   public void copyFolder(String oldPath, String newPath) {    try {      (new File(newPath)).mkdirs(); //如果檔案夾不存在 則建立新檔案夾      File a=new File(oldPath);      String[] file=a.list();      File temp=null;      for (int i = 0; i < file.length; i++) {        if(oldPath.endsWith(File.separator)){          temp=new File(oldPath+file[i]);        }        else{          temp=new File(oldPath+File.separator+file[i]);        }        if(temp.isFile()){          FileInputStream input = new FileInputStream(temp);          FileOutputStream output = new FileOutputStream(newPath + "/" +              (temp.getName()).toString());          byte[] b = new byte[1024 * 5];          int len;          while ( (len = input.read(b)) != -1) {            output.write(b, 0, len);          }          output.flush();          output.close();          input.close();        }        if(temp.isDirectory()){//如果是子檔案夾          copyFolder(oldPath+"/"+file[i],newPath+"/"+file[i]);        }      }    }    catch (Exception e) {      System.out.println("複製整個檔案夾內容操作出錯");      e.printStackTrace();    }  }   public void moveFile(String oldPath, String newPath) {    copyFile(oldPath, newPath);    delFile(oldPath);  }   public void moveFolder(String oldPath, String newPath) {    copyFolder(oldPath, newPath);    delFolder(oldPath);  }}---------------------- android培訓、java培訓、期待與您交流! ----------------------
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.