File
是文件和目錄路徑名的抽象表示形式,總的來講就是java建立刪除文件目錄的一個類庫,可是做用不單單於此,詳細見官方文檔java
File(File parent, String child)
根據parent
抽象路徑名和child
路徑名字符串建立一個新 File 實例。linux
File(String pathname)
經過將給定路徑名字符串轉換爲抽象路徑名來建立一個新 File 實例。git
File(String parent, String child)
根據 parent 路徑名字符串和child
路徑名字符串建立一個新File
實例。github
File(URI uri)
經過將給定的file: URI
轉換爲一個抽象路徑名來建立一個新的 File 實例。數組
File file=new File("/tmp/demo"); //File(String pathname) File file=new File("/tmp","demo"); //File(String parent, String child)
static String pathSeparator
與系統有關的路徑分隔符,一般是:函數
static String separator
與系統有關的默認名稱分隔符,爲了方便,它被表示爲一個字符串。linux是/學習
File file=new File("/tmp"+File.separator+"demo"); //使用分隔符建立一個路徑
boolean canExecute()
測試文件或者目錄是不是可執行的,測試可執行權限測試
boolean canRead()
測試可讀權限code
boolean canWrite()
測試可寫權限文檔
boolean setExecutable(boolean executable)
設置文件或者目錄的執行權限
setExecutable(boolean executable, boolean ownerOnly)
設置執行權限,若是第二個爲true那麼只有建立這個文件的用戶擁有執行權限
boolean setReadable(boolean readable)
設置可讀的權限
boolean setReadable(boolean readable, boolean ownerOnly)
同上
boolean setReadOnly()
標記此抽象路徑名指定的文件或目錄,從而只能對其進行讀操做。
boolean setWritable(boolean writable)
設置可寫的權限
boolean createNewFile()
建立一個文件,這裏建立的不是目錄
boolean mkdir()
建立文件夾
File getAbsoluteFile()
返回此抽象路徑名的絕對路徑名形式。
String getAbsolutePath()
返回此抽象路徑名的絕對路徑名字符串。
String getName()
返回由此抽象路徑名錶示的文件或目錄的名稱。
boolean isDirectory()
測試此抽象路徑名錶示的文件是不是一個目錄。
boolean isFile()
測試此抽象路徑名錶示的文件是不是一個標準文件。
boolean isHidden()
測試此抽象路徑名指定的文件是不是一個隱藏文件。
String[] list()
返回一個字符串數組,這些字符串指定此抽象路徑名錶示的目錄中的文件和目錄。
File[] listFiles()
返回一個抽象路徑名數組,這些路徑名錶示此抽象路徑名錶示的目錄中的文件。
File file=new File("/tmp/demo.txt"); if(file.exists())//若是文件存在就刪除這個文件 { file.delete(); } else { try{ file.createNewFile(); //建立一個文件 file.setExecutable(false); //設置執行權限 }catch (IOException e) { e.printStackTrace(); } }
File file=new File("/tmp","test"); if(file.exists()) { if(file.isDirectory()) //若是是一個文件夾 { System.out.println("這是一個文件夾"); file.delete(); } else if(file.isFile()) //若是是一個文件 { System.out.println("這是一個文件"); } } else { file.mkdir(); file.setWritable(false); //設置權限爲不可讀 }
這個函數列出的是文件的名字並非文件的路徑
File f=new File("d:"+File.separator); String[] str=f.list(); //這裏列出的僅僅是文件的名字,並非文件的路徑 for(String s:str){ System.out.println(s); }
這個列出的是文件的絕對路徑
File f=new File("d:"+File.separator); File[] files=f.listFiles(); for(File file:files){ System.out.println(file); }