本文目錄一覽:
java 種的File類是用來做什麼的?有什麼用處?(追加40分)
java 種的File類的作用和用處如下:
1.直接處理文件和文件系統。File類沒有指定信息怎樣從文件讀取或向文件存儲;它描述了文件本身的屬性。File對象用來獲取或處理與磁盤文件相關的信息,例如權限,時間,日期和目錄路徑。此外,File還瀏覽子目錄層次結構。很多程序中文件是數據的根源和目標。儘管它們在小應用程序中因為安全原因而受到嚴格限制,文件仍是存儲固定和共享信息的主要資源。Java中的目錄當成File 對待,它具有附加的屬性——一個可以被 list( )方法檢測的文件名列表。
2.下面的構造函數可以用來生成File 對象:
File(String directoryPath)
File(String directoryPath, String filename)
File(File dirObj, String filename)
這裡,directoryPath是文件的路徑名,filename 是文件名,dirObj 一個指定目錄的File 對象。下面的例子創建了三個文件:f1,f2,和f3。第一個File對象是由僅有一個目錄路徑參數的構造函數生成的。第二個對象有兩個參數——路徑和文件名。第三個File對象的參數包括指向f1文件的路徑及文件名。f3和f2指向相同的文件。
File f1 = new File(“/”);
File f2 = new File(“/”,”autoexec.bat”);
File f3 = new File(f1,”autoexec.bat”);
注意:Java 能正確處理UNIX和Windows/DOS約定路徑分隔符。如果在Windows版本的Java下用斜線(/),路徑處理依然正確。記住,如果你用Windows/DOS使用反斜線(/)的約定,你需要在字符串內使用它的轉義序列(//)。Java約定是用UNIX和URL風格的斜線來作路徑分隔符。
Java File類的問題
File f = new File(“e:/Java Program/A”); 實例化File對象,調用了構造方法,但只是設置了路徑和初始化一些參數而已。
creatNewFile()則是物理硬盤上新建一個文件。另外mkdir()和mkdirs()是創建文件夾。
問題2表述不是很清楚。
tree(children[i],level+1);是遞歸調用,傳入的level參數比父目錄的level多1,也就是增加了一級縮進。
getName()是獲取文件名,getParent()才是父目錄的路徑字符串。
System.out.println (preStr+children[i].getName()); 這句在for循環裡面,遍歷子文件數組,當然B和file1.txt都會被輸出,println會打印換行的。
children[i].isDirectory();isDirectory()是判斷File對象是否是文件夾,不是判斷是否有子文件。當然是文件夾是存在子文件的充分條件。即時是空文件夾,進一步遞歸tree方法時得到的子文件數組也是空的,不會拋出異常。
java中File類常用的方法有哪些?
給你一個中文的吧。你不想看英文的API;File類是直接繼承Object類的。Object類的方法我就不不寫了:
字段摘要
static String pathSeparator
與系統有關的路徑分隔符,為了方便,它被表示為一個字符串。
static char pathSeparatorChar
與系統有關的路徑分隔符。
static String separator
與系統有關的默認名稱分隔符,為了方便,它被表示為一個字符串。
static char separatorChar
與系統有關的默認名稱分隔符。
構造方法摘要
File(File parent, String child)
根據 parent 抽象路徑名和 child 路徑名字符串創建一個新 File 實例。
File(String pathname)
通過將給定路徑名字符串轉換為抽象路徑名來創建一個新 File 實例。
File(String parent, String child)
根據 parent 路徑名字符串和 child 路徑名字符串創建一個新 File 實例。
File(URI uri)
通過將給定的 file: URI 轉換為一個抽象路徑名來創建一個新的 File 實例。
方法摘要
boolean canExecute()
測試應用程序是否可以執行此抽象路徑名表示的文件。
boolean canRead()
測試應用程序是否可以讀取此抽象路徑名表示的文件。
boolean canWrite()
測試應用程序是否可以修改此抽象路徑名表示的文件。
int compareTo(File pathname)
按字母順序比較兩個抽象路徑名。
boolean createNewFile()
當且僅當不存在具有此抽象路徑名指定名稱的文件時,不可分地創建一個新的空文件。
static File createTempFile(String prefix, String suffix)
在默認臨時文件目錄中創建一個空文件,使用給定前綴和後綴生成其名稱。
static File createTempFile(String prefix, String suffix, File directory)
在指定目錄中創建一個新的空文件,使用給定的前綴和後綴字符串生成其名稱。
boolean delete()
刪除此抽象路徑名表示的文件或目錄。
void deleteOnExit()
在虛擬機終止時,請求刪除此抽象路徑名表示的文件或目錄。
boolean equals(Object obj)
測試此抽象路徑名與給定對象是否相等。
boolean exists()
測試此抽象路徑名表示的文件或目錄是否存在。
File getAbsoluteFile()
返回此抽象路徑名的絕對路徑名形式。
String getAbsolutePath()
返回此抽象路徑名的絕對路徑名字符串。
File getCanonicalFile()
返回此抽象路徑名的規範形式。
String getCanonicalPath()
返回此抽象路徑名的規範路徑名字符串。
long getFreeSpace()
返回此抽象路徑名指定的分區中未分配的字節數。
String getName()
返回由此抽象路徑名表示的文件或目錄的名稱。
String getParent()
返回此抽象路徑名父目錄的路徑名字符串;如果此路徑名沒有指定父目錄,則返回 null。
File getParentFile()
返回此抽象路徑名父目錄的抽象路徑名;如果此路徑名沒有指定父目錄,則返回 null。
String getPath()
將此抽象路徑名轉換為一個路徑名字符串。
long getTotalSpace()
返回此抽象路徑名指定的分區大小。
long getUsableSpace()
返回此抽象路徑名指定的分區上可用於此虛擬機的字節數。
int hashCode()
計算此抽象路徑名的哈希碼。
boolean isAbsolute()
測試此抽象路徑名是否為絕對路徑名。
boolean isDirectory()
測試此抽象路徑名表示的文件是否是一個目錄。
boolean isFile()
測試此抽象路徑名表示的文件是否是一個標準文件。
boolean isHidden()
測試此抽象路徑名指定的文件是否是一個隱藏文件。
long lastModified()
返回此抽象路徑名表示的文件最後一次被修改的時間。
long length()
返回由此抽象路徑名表示的文件的長度。
String[] list()
返回一個字符串數組,這些字符串指定此抽象路徑名表示的目錄中的文件和目錄。
String[] list(FilenameFilter filter)
返回一個字符串數組,這些字符串指定此抽象路徑名表示的目錄中滿足指定過濾器的文件和目錄。
File[] listFiles()
返回一個抽象路徑名數組,這些路徑名表示此抽象路徑名表示的目錄中的文件。
File[] listFiles(FileFilter filter)
返回抽象路徑名數組,這些路徑名表示此抽象路徑名表示的目錄中滿足指定過濾器的文件和目錄。
File[] listFiles(FilenameFilter filter)
返回抽象路徑名數組,這些路徑名表示此抽象路徑名表示的目錄中滿足指定過濾器的文件和目錄。
static File[] listRoots()
列出可用的文件系統根。
boolean mkdir()
創建此抽象路徑名指定的目錄。
boolean mkdirs()
創建此抽象路徑名指定的目錄,包括所有必需但不存在的父目錄。
boolean renameTo(File dest)
重新命名此抽象路徑名表示的文件。
boolean setExecutable(boolean executable)
設置此抽象路徑名所有者執行權限的一個便捷方法。
boolean setExecutable(boolean executable, boolean ownerOnly)
設置此抽象路徑名的所有者或所有用戶的執行權限。
boolean setLastModified(long time)
設置此抽象路徑名指定的文件或目錄的最後一次修改時間。
boolean setReadable(boolean readable)
設置此抽象路徑名所有者讀權限的一個便捷方法。
boolean setReadable(boolean readable, boolean ownerOnly)
設置此抽象路徑名的所有者或所有用戶的讀權限。
boolean setReadOnly()
標記此抽象路徑名指定的文件或目錄,從而只能對其進行讀操作。
boolean setWritable(boolean writable)
設置此抽象路徑名所有者寫權限的一個便捷方法。
boolean setWritable(boolean writable, boolean ownerOnly)
設置此抽象路徑名的所有者或所有用戶的寫權限。
String toString()
返回此抽象路徑名的路徑名字符串。
URI toURI()
構造一個表示此抽象路徑名的 file: URI。
URL toURL()
已過時。 此方法不會自動轉義 URL 中的非法字符。建議新的代碼使用以下方式將抽象路徑名轉換為 URL:首先通過 toURI 方法將其轉換為 URI,然後通過 URI.toURL 方法將 URI 裝換為 URL。
import java.io.file是幹嘛的
首先你要有包的概念,Java中的包就相當於windows系統中的文件夾,大白話就是,當前程序要使用Java文件夾下的io文件夾下的File類,猶豫不在同一個文件下的文件是相互不可見的,所以需要聲明引入。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/301846.html