Java學習之File類理解


File類是io包中唯一代表磁盤文件本身的對象。File類定義了一些與平台無關的方法來操作文件,可以通過調用File類中的方法,實現創建、刪除、重命名文件等。File類的對象主要用來獲取文件本身的一些信息,如文件所在目錄、文件的長度、文件讀寫權限等。數據流可以將數據寫入到文件中,而文件也是數據流最常用的數據媒體。

1、文件的創建與刪除

可以使用File類創建一個文件對象,File類構造方法:

(1)File(String  pathname)

該構造方法通過將給定路徑名字字符串轉換為抽象路徑來創建一個新File實例。

new  File(String pathname) 

pathname:是指路徑名(包含文件名)

File file = new  File("D:/test.txt")或者  File  file  =new  File("D:\\test.txt")

(2)File(String  parent ,String child)

該構造方法根據定義的父路徑和子路徑字符串(包含文件名)創建一個新的File實例。

(3)File(File f ,String child)

該構造方法根據parent抽象路徑名和child路徑名字符串創建一個新File實例。

使用File類創建一個文件對象:File  file  =  new File("D:/myword","word.txt");

如果D:/myword目錄中沒有名稱為word的文件,File類對象可通過調用createNewFile()方法創建一個名稱為word.txt的文件;如果word.txt文件存在,可以通過文件對象的delete()方法將其刪除。

import java.io.File;
import java.io.IOException;

public class FileTest {
  public static void main(String[] args) {
  File file = new File("D:\\test","test6.txt");
    if(file.exists()){
    file.delete() ;
      System.out.println("文件已刪除!");
  }else {
  try {
    file.createNewFile() ;
      System.out.println("文件已創建!");
  } catch (IOException e) {

    e.printStackTrace();
      }
        }
    }
  }

2、獲取文件信息

File類提供了很多用於獲取文件本身的一些信息,常用方法:

File類常用方法
方法 描述
String   getName() 獲取文件的名稱
boolean  canRead() 判斷文件是否是可讀的
boolean  canWrite() 品判斷文件是否可被寫入
boolean  exits() 判斷文件長度是否存在
int  length() 獲取文件的長度(以字節為單位)
String  getAbsolutePath() 獲取文件的絕對路徑
String  getParent() 獲取文件的父路徑
boolean  isFile() 判斷此抽象路徑名表示的文件是否為普通文件
boolean  isDirectory() 判斷此抽象路徑名表示的是否是一個目錄
boolean  isHidden 判斷文件是否是隱藏文件
long  lastModified() 獲取文件最后修改時間
Boolean  canExecute()
測試應用程序是否可以執行此抽象路徑名表示的文件。 
boolean  createNewFile() 當且僅當具有該名稱的文件尚不存在時,原子地創建一個由該抽象路徑名命名的新的空文件。
boolean  delete() 刪除由此抽象路徑名表示的文件或目錄。
File[]  listFiles()  返回一個抽象路徑名數組,表示由該抽象路徑名表示的目錄中的文件。
String[]  list() 返回一個字符串數組,命名由此抽象路徑名表示的目錄中的文件和目錄。
boolean  mkdirs() 創建由此抽象路徑名命名的目錄,包括任何必需但不存在的父目錄。可創建多層文件包
boolean  mkdir() 創建由此抽象路徑名命名的目錄。只能創建一層文件包
boolean  reNameTo(File dest) 重命名由此抽象路徑名表示的文件。
boolean  setReadOnly()
標記由此抽象路徑名命名的文件或目錄,以便只允許讀取操作。 
boolean  setWritable(boolean  writable)
一種方便的方法來設置所有者對此抽象路徑名的寫入權限。 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM