利用java.io.File類實現遍曆本地磁碟上指定盤符或檔案夾的所有的檔案

來源:互聯網
上載者:User

標籤:定義   研究   自己   抽象   不同   int   for   磁碟   異常   

 2016-11-18

 這是本人的第一篇隨筆部落格,糾結了半天還是選擇自己學的時候比較用心的一些知識點上。利用java.io.File類指定本地的檔案夾進行遍曆所有的檔案。

package org.lxm.filedemo;import java.io.File;import java.util.Scanner;/* * 本程式是將某個盤的所有檔案夾及其檔案全部調出來的操作 */public class FileAllDemo {    public static void main(String[] args) {               // 通過Scanner進行互動        Scanner sc = new Scanner(System.in);        System.out.println("請輸入要列印出的檔案夾:(windows下分隔字元請使用“\\”)");               // 接收輸入的內容        String pan = sc.next();               // 執行個體化File類        File file = new File(pan);              // 調用lists方法        lists(file);    }    public static void lists(File file) {        if (file.isDirectory()) { // 判斷是否為檔案夾             File[] list = file.listFiles(); // 使用數組接收帶有完整路徑的檔案夾            if (list != null) {                               // 迴圈遍曆檔案                for (int i = 0; i < list.length; i++) {                    lists(list[i]);                }            }               // 輸出檔案名稱        System.out.println(file);        }    }}

以上就是實現的代碼。

  File 類的執行個體是不可變的;也就是說,一旦建立,File 對象表示的抽象路徑名將永不改變。其中路徑中由於windows和linu系統使用的符號不同,所以通常使用File.separator(此處為常量)進行分隔,用法樣本如 File file = new File("E:"+File.separator+"1.jpg");

  經常用到的方法有createNewFile()方法,表示建立一個新的檔案,建立時必須指定一個路徑,用法樣本如以上的file不存在,則可使用 file.createNewFile()進行建立,此時會拋出異常,需要try{//建立代碼}catch(IOException e){}或throws進行處理,這裡不做重點;

  mkdir()方法,表示建立檔案夾命令,和上面一樣,必須指定一個路徑,如 File file1 = new File("E:"+File.separator+"java");file1.mkdir();則在指定路徑上將建立一個java檔案夾;

  delete()方法,表示刪除指定路徑的檔案,用法如若刪除以上建立的檔案則file.delete();就可將檔案刪除;

  exists()方法,表示測試指定路徑的檔案是否存在,返回的是一個布爾值,true或false,用法如以上將file刪除之後測試file.exists()就會返回false,常用於if語句中;

  isFile()方法,表示測試指定路徑的檔案是否為一個檔案,返回true或false,isDirectory()方法,表示指定的路徑是否為一個檔案夾,用法略;

  File[] listFiles()方法,利用數組進行指定檔案夾的遍曆,用法為先定義一個File filepath = new File("E:"+File.separator+"檔案夾名稱");File[] list = filepath.listFiles();再利用加強的for迴圈將檔案夾名稱下面的檔案及檔案夾遍曆出來,如for(File lists : list){System.out.println(lists);};

  String[] list()方法,和上面listFiles()方法類似,都是將指定檔案夾下面的檔案及檔案夾遍曆出來,用法相同,不同之處是使用list()方法遍曆出來的內容是 根目錄:\ 檔案名稱,如 E:\檔案名稱,而使用listFiles()方法遍曆出來的內容是 根目錄:\ 檔案夾名\檔案名稱,如 E:\檔案夾名稱\檔案名稱。這是比較直觀的區別;

  以上就是常用的方法,具體請參考API進行分析研究。

利用java.io.File類實現遍曆本地磁碟上指定盤符或檔案夾的所有的檔案

聯繫我們

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