Java: I/O 技術一:檔案操作

來源:互聯網
上載者:User

在java中,I/O是通過java.io包中的類和介面來實現,所以理所當然的,我們第一步要做的就是import這個包了。

java.io提供了一個File類,這是類很容易讓人產生誤會,它表示的是一個檔案名稱或者目錄名,而不是檔案本身,所以通過這個類沒法對檔案裡面的資料進行操作。File類提供了一序列對檔案操作的功能:刪除檔案,建立目錄,查詢檔案大小等等。要想對檔案資料進行操作那就需要流對象了,在這裡就暫時不做介紹,在我後面的文章中將會對它進行詳細介紹。

下面我將會通過一個叫做FileExtension類來對File類中的各種操作進行封裝,通過這個例子希望大家很好的使用File類,在這裡我只提供DeleteFile的實現。該例子引用之《java執行個體技術手冊》這本書。

public class FileExtension {

 /**
  * delete a specify file
  * @param filename : specify a file
  */      

public static void DeleteFile(String filename){} //這個函數的功能是刪除一個指定的存在的檔案

  protected static void fail(String msg) throws IllegalArgumentException{
  throw new IllegalArgumentException(msg);
 }

DeleteFile的實現如下:

 public static void DeleteFile(String filename){
  File file = new File(filename);
  
  if(!file.exists())
   fail("Delete: no such file or directory:" + filename);
  if(!file.canWrite())
   fail("Delete: write protected: " + filename);
  
  if(file.isDirectory()){
   String[] files = file.list();
   if(files.length > 0)
    fail("Delete: directory not empty: " + filename);
  }
  
  boolean success = file.delete();
  
  if(!success)
   fail("Delete: deletion failed");
 }

如果你詳細的看了上面的例子的話,那麼你就會發現java對File的封裝使我們使用起來非常簡便,如果有興趣的話你可以增加一些函數,比如CreateDir,ListDir,FileSize等等一些功能,這將對你有所協助。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.