FileUtil
public
class
FileUtil
extends Object
java.lang.Object | |
↳ | com.android.tradefed.util.FileUtil |
檔案相關作業的輔助類別
摘要
巢狀類別 | |
---|---|
class |
FileUtil.LowDiskSpaceException
如果可用磁碟空間低於最低門檻,就會擲回此例外狀況。 |
常數 | |
---|---|
int |
FILESYSTEM_FILENAME_MAX_LENGTH
|
公用建構函式 | |
---|---|
FileUtil()
|
公用方法 | |
---|---|
static
String
|
calculateBase64Md5(File file)
用於計算檔案 base64 md5 的輔助方法。 |
static
long
|
calculateCrc32(File file)
用來計算檔案 CRC-32 的輔助方法。 |
static
String
|
calculateMd5(File file)
用來計算檔案 MD5 的輔助方法。 |
static
boolean
|
chmod(File file, String perms)
|
static
boolean
|
chmodGroupRW(File file)
盡力讓指定的檔案群組可讀寫。 |
static
boolean
|
chmodGroupRWX(File file)
盡力嘗試讓指定的檔案群組可執行、可讀取和可寫入。 |
static
boolean
|
chmodRWXRecursively(File file)
|
static
void
|
closeZip(ZipFile zipFile)
這個方法已淘汰。
已移至 |
static
|
collectJars(File dir)
傳回指定目錄中找到的所有 JAR 檔案 |
static
boolean
|
compareFileContents(File file1, File file2)
用於比較兩個檔案的位元內容的工具方法。 |
static
long
|
convertSizeToBytes(String sizeString)
|
static
IOException
|
convertToDiskSpaceIfNeeded(IOException e)
視需要將錯誤包裝成磁碟空間錯誤。 |
static
String
|
convertToReadableSize(long sizeLong)
將指定的位元組檔案大小轉換為更易讀的 X.Y[KMGT] 格式。 |
static
void
|
copyFile(File origFile, File destFile)
輔助方法,可將檔案內容複製到本機檔案 |
static
File
|
createNamedTempDir(File parentDir, String name)
輔助函式,用於在資料夾中建立命名目錄。 |
static
File
|
createNamedTempDir(String name)
輔助函式,可在暫存資料夾中建立命名目錄。 |
static
File
|
createTempDir(String prefix)
輔助函式,可在系統預設的暫存檔案目錄中建立暫存目錄。 |
static
File
|
createTempDir(String prefix, File parentDir)
建立暫存資料夾的輔助函式。 |
static
File
|
createTempFile(String prefix, String suffix, File parentDir)
|
static
File
|
createTempFile(String prefix, String suffix)
輔助包裝函式,可在 |
static
File
|
createTempFileForRemote(String remoteFilePath, File parentDir)
輔助方法,可在暫存磁碟上建構不重複的檔案,其名稱應盡可能與遠端檔案路徑指定的檔案名稱相符 |
static
File
|
createZip(File dir)
這個方法已淘汰。
已移至 |
static
void
|
createZip(File dir, File zipFile)
這個方法已淘汰。
已移至 |
static
void
|
deleteFile(File file)
嘗試刪除檔案。 |
static
boolean
|
ensureGroupRWX(File file)
盡力確保指定的檔案群組可執行、可讀取及可寫入。 |
static
File
|
extractFileFromZip(ZipFile zipFile, String filePath)
這個方法已淘汰。
已移至 |
static
void
|
extractZip(ZipFile zipFile, File destDir)
這個方法已淘汰。
已移至 |
static
File
|
findDirectory(String dirName, File... dirs)
搜尋並傳回其他目錄中的第一個目錄 |
static
|
findDirsUnder(File rootDir, File relativeParent)
以遞迴方式尋找指定 |
static
File
|
findFile(String fileName, IAbi abi, File... dirs)
取得指定目錄中檔案的所有檔案路徑,其名稱必須符合指定篩選器,如果 abi 不為空值,則也會依據 abi arch 篩選找到的檔案。 |
static
File
|
findFile(File dir, String fileName)
遞迴搜尋指定目錄,找出第一個具有指定名稱的檔案 |
static
|
findFiles(String fileName, IAbi abi, boolean includeDirectory, File... dirs)
取得指定目錄中名稱符合指定篩選條件的所有檔案,並且如果 abi 不為空值,則依 ABI 架構篩選找到的檔案。 |
static
|
findFiles(File dir, String filter)
取得指定目錄中所有檔案的檔案路徑,這些檔案的名稱必須符合指定篩選條件 |
static
|
findFilesObject(File dir, String filter)
取得指定目錄中所有檔案的檔案路徑,這些檔案的名稱必須符合指定篩選條件 |
static
|
findFilesObject(File dir, String filter, boolean includeDirectory)
取得指定目錄中所有檔案的檔案路徑,這些檔案的名稱必須符合指定篩選條件 |
static
String
|
getBaseName(String fileName)
取得指定檔案名稱的基礎名稱 (不含副檔名)。 |
static
String
|
getContentType(String filePath)
根據副檔名取得檔案的內容類型。 |
static
String
|
getExtension(String fileName)
取得指定檔案名稱的副檔名。 |
static
File
|
getFileForPath(File parentDir, String... pathSegments)
用於建構系統相關檔案的輔助方法 |
static
String
|
getPath(String... pathSegments)
輔助方法,用於建構系統相關的相對路徑 |
static
void
|
gzipFile(File file, File gzipFile)
這個方法已淘汰。
已移至 |
static
void
|
hardlinkFile(File origFile, File destFile)
輔助方法,可將檔案硬連結至另一個檔案。 |
static
void
|
hardlinkFile(File origFile, File destFile, boolean ignoreExistingFile)
輔助方法,可將檔案硬連結至另一個檔案。 |
static
boolean
|
isDiskSpaceError(String message)
如果訊息是磁碟空間錯誤,則傳回 true。 |
static
boolean
|
mkdirsRWX(File file)
方法:透過呼叫 |
static
String
|
readStringFromFile(File sourceFile, long startOffset, long length)
用於從檔案讀取部分字串資料的輔助方法 |
static
String
|
readStringFromFile(File sourceFile)
用於從檔案讀取字串資料的輔助方法 |
static
void
|
recursiveCopy(File sourceDir, File destDir)
遞迴複製資料夾內容。 |
static
void
|
recursiveDelete(File rootDir)
以遞迴方式刪除指定檔案或目錄及其所有內容。 |
static
void
|
recursiveHardlink(File sourceDir, File destDir)
以遞迴方式建立資料夾內容的硬連結。 |
static
void
|
recursiveHardlink(File sourceDir, File destDir, boolean ignoreExistingFile)
以遞迴方式建立資料夾內容的硬連結。 |
static
void
|
recursiveSymlink(File sourceDir, File destDir)
以遞迴方式建立資料夾內容的符號連結。 |
static
File
|
saveResourceFile(InputStream resourceStream, File destDir, String targetFileName)
將資源檔案儲存至目錄。 |
static
void
|
setReadableRecursive(File file)
遞迴方式為指定檔案設定讀取和執行 (如果是資料夾) 權限。 |
static
Long
|
sizeOfDirectory(File directory)
傳回目錄回報的大小。 |
static
void
|
symlinkFile(File origFile, File destFile)
輔助方法,可將檔案連結至其他檔案 |
static
|
unixModeToPosix(int mode)
將代表 Unix 模式的整數轉換為一組 |
static
void
|
writeToFile(String inputString, File destFile, boolean append)
用於將字串資料寫入或附加至檔案的輔助方法 |
static
void
|
writeToFile(String inputString, File destFile)
用於將字串資料寫入檔案的輔助方法 |
static
void
|
writeToFile(InputStream input, File destFile, boolean append, long startOffset, long size)
用於將串流資料寫入檔案的輔助方法 |
static
void
|
writeToFile(InputStream input, File destFile)
用於將串流資料寫入檔案的輔助方法 |
static
void
|
writeToFile(InputStream input, File destFile, boolean append)
用於將串流資料寫入檔案的輔助方法 |
受保護的方法 | |
---|---|
static
boolean
|
chmodExists()
內部輔助程式,用於判斷系統作業系統是否可使用「chmod」。 |
static
void
|
setChmodBinary(String chmodName)
供測試使用。 |
常數
FILESYSTEM_FILENAME_MAX_LENGTH
public static final int FILESYSTEM_FILENAME_MAX_LENGTH
常數值: 255 (0x000000ff)
公用建構函式
FileUtil
public FileUtil ()
公用方法
calculateBase64Md5
public static String calculateBase64Md5 (File file)
用於計算檔案 Base64 md5 的輔助方法。
傳回 | |
---|---|
String |
檔案的 MD5 |
calculateCrc32
public static long calculateCrc32 (File file)
用於計算檔案 CRC-32 的輔助方法。
傳回 | |
---|---|
long |
檔案的 CRC-32 |
擲回 | |
---|---|
|
IOException |
calculateMd5
public static String calculateMd5 (File file)
用來計算檔案 MD5 的輔助方法。
傳回 | |
---|---|
String |
檔案的 MD5 |
chmod
public static boolean chmod (File file, String perms)
參數 | |
---|---|
file |
File |
perms |
String |
傳回 | |
---|---|
boolean |
chmodGroupRW
public static boolean chmodGroupRW (File file)
盡力讓指定的檔案群組可讀寫。
請注意,您必須具備執行權限,才能讓目錄可供存取。請參閱 chmodGroupRWX(File)
。
如果基礎作業系統不支援「chmod」系統指令,則會將檔案設為可供所有人寫入。
參數 | |
---|---|
file |
File :讓擁有者和群組可寫的 ERROR(/File) |
傳回 | |
---|---|
boolean |
true :如果檔案已成功設為可供群組寫入,否則為 false |
chmodGroupRWX
public static boolean chmodGroupRWX (File file)
盡力讓指定的檔案群組可執行、可讀取和可寫入。
如果基礎作業系統不支援「chmod」系統指令,系統會嘗試為所有使用者設定權限。
參數 | |
---|---|
file |
File :讓擁有者和群組可寫的 ERROR(/File) |
傳回 | |
---|---|
boolean |
如果權限設定成功,則為 true ;否則為 false |
chmodRWXRecursive
public static boolean chmodRWXRecursively (File file)
參數 | |
---|---|
file |
File |
傳回 | |
---|---|
boolean |
closeZip
public static void closeZip (ZipFile zipFile)
This method is deprecated.
已移至 ZipUtil.closeZip(ZipFile)
。
關閉已開啟的 ERROR(/ZipFile)
,忽略任何例外狀況。
參數 | |
---|---|
zipFile |
ZipFile :要關閉的檔案 |
collectJars
public staticcollectJars (File dir)
傳回指定目錄中找到的所有 JAR 檔案
參數 | |
---|---|
dir |
File |
傳回 | |
---|---|
|
compareFileContents
public static boolean compareFileContents (File file1, File file2)
用於比較兩個檔案的位元內容的工具方法。
參數 | |
---|---|
file1 |
File |
file2 |
File |
傳回 | |
---|---|
boolean |
true 檔案內容是否相同 |
convertSizeToBytes
public static long convertSizeToBytes (String sizeString)
convertToReadableSize(long)
的倒數。將 convertToReadableSize(long)
中所述的可讀格式轉換為位元組值。
參數 | |
---|---|
sizeString |
String :尺寸的字串說明。 |
傳回 | |
---|---|
long |
大小 (以位元組為單位) |
擲回 | |
---|---|
IllegalArgumentException |
如果無法辨識尺寸 |
convertToDiskSpaceIfNeeded
public static IOException convertToDiskSpaceIfNeeded (IOException e)
視需要將錯誤包裝成磁碟空間錯誤。
參數 | |
---|---|
e |
IOException |
傳回 | |
---|---|
IOException |
convertToReadableSize
public static String convertToReadableSize (long sizeLong)
將指定的位元組檔案大小轉換為更易讀的 X.Y[KMGT] 格式。
參數 | |
---|---|
sizeLong |
long :檔案大小 (以位元組為單位) |
傳回 | |
---|---|
String |
檔案大小的說明字串 |
copyFile
public static void copyFile (File origFile, File destFile)
輔助方法,可將檔案內容複製到本機檔案
參數 | |
---|---|
origFile |
File :要複製的原始檔案 |
destFile |
File :目的地檔案 |
擲回 | |
---|---|
|
如果無法複製檔案 |
createNamedTempDir
public static File createNamedTempDir (File parentDir, String name)
輔助函式,用於在資料夾中建立命名目錄。
這個目錄的名稱不會隨機產生。如果目錄已存在,系統會傳回該目錄。
參數 | |
---|---|
parentDir |
File :建立目錄的目錄。如果為空值,則會在 /tmp 中 |
name |
String :在父資料夾中建立的目錄名稱 |
傳回 | |
---|---|
File |
已建立的目錄 |
createNamedTempDir
public static File createNamedTempDir (String name)
輔助函式,可在暫存資料夾中建立命名目錄。
這個目錄的名稱不會隨機產生。如果目錄已存在,系統會傳回該目錄。
參數 | |
---|---|
name |
String :在 tmp 資料夾中建立的目錄名稱。 |
傳回 | |
---|---|
File |
已建立的目錄 |
createTempDir
public static File createTempDir (String prefix)
輔助函式,可在系統預設的暫存檔案目錄中建立暫存目錄。
參數 | |
---|---|
prefix |
String :用於產生檔案名稱的前置字串,長度至少須為三個字元 |
傳回 | |
---|---|
File |
已建立的目錄 |
擲回 | |
---|---|
|
如果無法建立檔案 |
createTempDir
public static File createTempDir (String prefix, File parentDir)
用於建立暫存目錄的輔助函式。
參數 | |
---|---|
prefix |
String :用於產生檔案名稱的前置字串,長度至少須為三個字元 |
parentDir |
File :要建立目錄的父項目錄。如果是 null ,系統會使用預設的暫存目錄。 |
傳回 | |
---|---|
File |
已建立的目錄 |
擲回 | |
---|---|
|
如果無法建立檔案 |
createTempFile
public static File createTempFile (String prefix, String suffix, File parentDir)
ERROR(/File#createTempFile(String, String, File))
周圍的輔助包裝函式,可稽核磁碟空間不足的情況。
參數 | |
---|---|
prefix |
String |
suffix |
String |
parentDir |
File |
傳回 | |
---|---|
File |
擲回 | |
---|---|
FileUtil.LowDiskSpaceException |
如果分區的磁碟空間低於允許的最低值 |
createTempFile
public static File createTempFile (String prefix, String suffix)
輔助包裝函式,可在 ERROR(/File#createTempFile(String, String))
中檢查磁碟空間不足的情況。
參數 | |
---|---|
prefix |
String |
suffix |
String |
傳回 | |
---|---|
File |
擲回 | |
---|---|
FileUtil.LowDiskSpaceException |
如果暫時性磁碟分區的磁碟空間低於允許的最低值 |
createTempFileForRemote
public static File createTempFileForRemote (String remoteFilePath, File parentDir)
輔助方法,可在暫存磁碟上建構不重複的檔案,其名稱應盡可能與遠端檔案路徑提供的檔案名稱相符
參數 | |
---|---|
remoteFilePath |
String :以「/」分隔的遠端路徑,用於建構名稱 |
parentDir |
File :建立檔案的父目錄。null 使用預設的暫存目錄 |
傳回 | |
---|---|
File |
createZip
public static File createZip (File dir)
This method is deprecated.
已移至 ZipUtil.createZip(File)
。
實用方法,可建立包含指定目錄及其所有內容的臨時 ZIP 檔案。
參數 | |
---|---|
dir |
File :要壓縮的目錄 |
傳回 | |
---|---|
File |
包含目錄內容的臨時 ZIP 檔案 ERROR(/File) |
擲回 | |
---|---|
|
如果無法建立 ZIP 檔案 |
createZip
public static void createZip (File dir, File zipFile)
This method is deprecated.
已移至 ZipUtil.createZip(File, File)
。
建立包含指定目錄及其所有內容的 ZIP 檔案的實用程式方法。
參數 | |
---|---|
dir |
File :要壓縮的目錄 |
zipFile |
File :要建立的 ZIP 檔案,該檔案不應已存在 |
擲回 | |
---|---|
|
如果無法建立 ZIP 檔案 |
deleteFile
public static void deleteFile (File file)
嘗試刪除檔案。用於清理 finally
節內的內容。
參數 | |
---|---|
file |
File :可能為空值。 |
ensureGroupRWX
public static boolean ensureGroupRWX (File file)
盡力確保指定的檔案群組可執行、可讀取和可寫入。
如果基礎作業系統不支援「chmod」系統指令,系統會嘗試為所有使用者設定權限。這項作業會同步處理,以免透過快取存取檔案而導致競爭狀況,例如GCSFileDownloader。
參數 | |
---|---|
file |
File :讓擁有者和群組可寫的 ERROR(/File) |
傳回 | |
---|---|
boolean |
如果權限設定成功,則為 true ;否則為 false |
extractFileFromZip
public static File extractFileFromZip (ZipFile zipFile, String filePath)
This method is deprecated.
已移至 ZipUtil.extractFileFromZip(ZipFile, String)
。
實用程式方法,可從 ZIP 檔案中將特定檔案解壓縮至暫存檔案
參數 | |
---|---|
zipFile |
ZipFile :要擷取的 ERROR(/ZipFile) |
filePath |
String :要解壓縮的檔案路徑 |
傳回 | |
---|---|
File |
ERROR(/File) ,如果找不到則傳回空值 |
擲回 | |
---|---|
|
無法解壓縮檔案 |
extractZip
public static void extractZip (ZipFile zipFile, File destDir)
This method is deprecated.
已移至 ZipUtil.extractZip(ZipFile, File)
。
用於將 ZIP 檔案的完整內容解壓縮至指定目錄的工具方法
參數 | |
---|---|
zipFile |
ZipFile :要擷取的 ERROR(/ZipFile) |
destDir |
File :要將檔案解壓縮至的本機資料夾 |
擲回 | |
---|---|
|
無法解壓縮檔案 |
findDirectory
public static File findDirectory (String dirName, File... dirs)
搜尋並傳回其他目錄中的第一個目錄 ERROR(/File)
。
參數 | |
---|---|
dirName |
String :我們要尋找的目錄名稱。 |
dirs |
File :我們要搜尋的目錄清單。 |
傳回 | |
---|---|
File |
找到目錄的 ERROR(/File) ,如果找不到,則傳回 Null。 |
擲回 | |
---|---|
|
IOException |
findDirsUnder
public staticfindDirsUnder (File rootDir, File relativeParent)
以遞迴方式尋找指定 rootDir
下的所有目錄
參數 | |
---|---|
rootDir |
File :要搜尋的根目錄 |
relativeParent |
File :所有傳回的 ERROR(/File) 的選用父項。如未指定,所有 ERROR(/File) 都會相對於 rootDir 。 |
傳回 | |
---|---|
|
一組 ERROR(/File) ,代表 rootDir 下的所有目錄,包括 rootDir 本身。如果 rootDir 為空值,則會傳回空集。 |
findFile
public static File findFile (String fileName, IAbi abi, File... dirs)
取得指定目錄中檔案的所有檔案路徑,其名稱必須符合指定篩選器,如果 abi 不為空值,則也會依據 abi arch 篩選找到的檔案。傳回找到的第一個相符檔案。
參數 | |
---|---|
fileName |
String :用來比對檔案路徑的規則運算式 String |
abi |
IAbi :與目標相符的 ABI IAbi 物件 |
dirs |
File :要搜尋檔案的目錄的 ERROR(/File) 物件的 varargs 陣列 |
傳回 | |
---|---|
File |
找不到 ERROR(/File) 或 null 時 |
findFile
public static File findFile (File dir, String fileName)
遞迴搜尋指定目錄,找出名稱為指定名稱的第一個檔案
參數 | |
---|---|
dir |
File :要搜尋的目錄 |
fileName |
String :要搜尋的檔案名稱 |
傳回 | |
---|---|
File |
找不到 ERROR(/File) 或 null 時 |
findFiles
public staticfindFiles (String fileName, IAbi abi, boolean includeDirectory, File... dirs)
取得指定目錄中名稱符合指定篩選器的所有檔案,如果 abi 不為空值,也會依據 abi arch 篩選找到的檔案。
參數 | |
---|---|
fileName |
String :用來比對檔案路徑的規則運算式 String |
abi |
IAbi :與目標相符的 ABI IAbi 物件 |
includeDirectory |
boolean :是否要在搜尋結果中納入目錄 |
dirs |
File :要搜尋檔案的目錄的 ERROR(/File) 物件陣列 |
傳回 | |
---|---|
|
一組 ERROR(/File) ,如果找不到則為空白 |
findFiles
public staticfindFiles (File dir, String filter)
取得指定目錄中所有檔案的檔案路徑,檔案名稱必須符合指定篩選條件
參數 | |
---|---|
dir |
File :要遞迴搜尋檔案的目錄的 ERROR(/File) 物件 |
filter |
String :用於比對檔案名稱的規則運算式 String |
傳回 | |
---|---|
|
一組檔案路徑的 String |
findFilesObject
public staticfindFilesObject (File dir, String filter)
取得指定目錄中所有檔案的檔案路徑,檔案名稱必須符合指定篩選條件
參數 | |
---|---|
dir |
File :要遞迴搜尋檔案的目錄的 ERROR(/File) 物件 |
filter |
String :用於比對檔案名稱的規則運算式 String |
傳回 | |
---|---|
|
一組檔案物件的 ERROR(/File) 。@請參閱 findFiles(File, String) |
findFilesObject
public staticfindFilesObject (File dir, String filter, boolean includeDirectory)
取得指定目錄中所有檔案的檔案路徑,檔案名稱必須符合指定篩選條件
參數 | |
---|---|
dir |
File :要遞迴搜尋檔案的目錄的 ERROR(/File) 物件 |
filter |
String :用於比對檔案名稱的規則運算式 String |
includeDirectory |
boolean :是否要在搜尋結果中納入目錄 |
傳回 | |
---|---|
|
一組檔案物件的 ERROR(/File) 。@請參閱 findFiles(File, String) |
getBaseName
public static String getBaseName (String fileName)
取得指定檔案名稱的基礎名稱 (不含副檔名)。
例如 getBaseName("file.txt") 會傳回 "file"
傳回 | |
---|---|
String |
基礎名稱 |
getContentType
public static String getContentType (String filePath)
根據副檔名取得檔案的內容類型。
參數 | |
---|---|
filePath |
String :檔案路徑 |
傳回 | |
---|---|
String |
內容類型 |
getExtension
public static String getExtension (String fileName)
取得指定檔案名稱的副檔名。
傳回 | |
---|---|
String |
副檔名或空字串 (如果檔案沒有副檔名) |
getFileForPath
public static File getFileForPath (File parentDir, String... pathSegments)
用來建構系統相關檔案的輔助方法
參數 | |
---|---|
parentDir |
File :要使用的父目錄。 |
pathSegments |
String :要使用的相對路徑區段 |
傳回 | |
---|---|
File |
代表指定路徑的 ERROR(/File) ,其中每個 pathSegment 以 ERROR(/File#separatorChar) 分隔 |
getPath
public static String getPath (String... pathSegments)
用來建構系統相關相對路徑的輔助方法
參數 | |
---|---|
pathSegments |
String :要使用的相對路徑區段 |
傳回 | |
---|---|
String |
代表指定路徑的 String ,其中每個 pathSegment 以 ERROR(/File#separatorChar) 分隔 |
gzipFile
public static void gzipFile (File file, File gzipFile)
This method is deprecated.
已移至 ZipUtil.gzipFile(File, File)
。
建立單一檔案的 GZIP 版本的輔助方法。
參數 | |
---|---|
file |
File :原始檔案 |
gzipFile |
File :要放置壓縮內容的檔案 |
擲回 | |
---|---|
|
IOException |
hardlinkFile
public static void hardlinkFile (File origFile, File destFile)
輔助方法,可將檔案硬連結至另一個檔案。在跨區隔連結的情況下,改用複製。
參數 | |
---|---|
origFile |
File :原始檔案 |
destFile |
File :目的地檔案 |
擲回 | |
---|---|
|
如果無法建立檔案硬連結 |
hardlinkFile
public static void hardlinkFile (File origFile, File destFile, boolean ignoreExistingFile)
輔助方法,可將檔案硬連結至另一個檔案。在跨區隔連結的情況下,改用複製。
參數 | |
---|---|
origFile |
File :原始檔案 |
destFile |
File :目的地檔案 |
ignoreExistingFile |
boolean :如果為 True,且連結的檔案已存在,則略過例外狀況。 |
擲回 | |
---|---|
|
如果無法建立檔案硬連結 |
isDiskSpaceError
public static boolean isDiskSpaceError (String message)
如果訊息是磁碟空間錯誤,則傳回 true。
參數 | |
---|---|
message |
String |
傳回 | |
---|---|
boolean |
mkdirsRWX
public static boolean mkdirsRWX (File file)
方法可建立目錄鏈結,並透過呼叫 chmodGroupRWX(File)
將所有群組執行/讀取/寫入權限設為已建立。基本上是同時執行 chmod(File, String)
的 ERROR(/File#mkdirs())
版本。
參數 | |
---|---|
file |
File :要建立的目錄名稱,可能包含尚不存在的目錄。 |
傳回 | |
---|---|
boolean |
如果 file 存在且為目錄,則為 true ;否則為 false 。 |
readStringFromFile
public static String readStringFromFile (File sourceFile, long startOffset, long length)
用於從檔案讀取部分字串資料的輔助方法
參數 | |
---|---|
sourceFile |
File :要讀取的檔案 |
startOffset |
long :從檔案讀取的起始偏移量。 |
length |
long :要讀取的檔案位元組數量。 |
傳回 | |
---|---|
String |
擲回 | |
---|---|
|
IOException |
|
FileNotFoundException |
readStringFromFile
public static String readStringFromFile (File sourceFile)
用於從檔案讀取字串資料的輔助方法
參數 | |
---|---|
sourceFile |
File :要讀取的檔案 |
傳回 | |
---|---|
String |
擲回 | |
---|---|
|
IOException |
|
FileNotFoundException |
recursiveCopy
public static void recursiveCopy (File sourceDir, File destDir)
遞迴複製資料夾內容。
僅支援複製檔案和目錄,不會複製符號連結。如果目的地目錄不存在,系統會建立該目錄。
參數 | |
---|---|
sourceDir |
File :包含要複製的檔案的資料夾 |
destDir |
File :目標資料夾 |
擲回 | |
---|---|
|
IOException |
recursiveDelete
public static void recursiveDelete (File rootDir)
以遞迴方式刪除指定檔案或目錄及其所有內容。
參數 | |
---|---|
rootDir |
File :要刪除的目錄或檔案;可為空值 |
recursiveHardlink
public static void recursiveHardlink (File sourceDir, File destDir)
以遞迴方式建立資料夾內容的硬連結。
僅支援複製檔案和目錄,不會複製符號連結。如果目的地目錄不存在,系統會建立該目錄。
參數 | |
---|---|
sourceDir |
File :包含要複製的檔案的資料夾 |
destDir |
File :目標資料夾 |
擲回 | |
---|---|
|
IOException |
recursiveHardlink
public static void recursiveHardlink (File sourceDir, File destDir, boolean ignoreExistingFile)
以遞迴方式建立資料夾內容的硬連結。
僅支援複製檔案和目錄,不會複製符號連結。如果目標目錄不存在,系統會建立該目錄。
參數 | |
---|---|
sourceDir |
File :包含要複製的檔案的資料夾 |
destDir |
File :目標資料夾 |
ignoreExistingFile |
boolean :如果為 True,且連結的檔案已存在,則略過例外狀況。 |
擲回 | |
---|---|
|
IOException |
recursiveSymlink
public static void recursiveSymlink (File sourceDir, File destDir)
以遞迴方式建立資料夾內容的符號連結。
僅支援複製檔案和目錄,不會複製符號連結。如果目標目錄不存在,系統會建立該目錄。
參數 | |
---|---|
sourceDir |
File :包含要複製的檔案的資料夾 |
destDir |
File :目標資料夾 |
擲回 | |
---|---|
|
IOException |
saveResourceFile
public static File saveResourceFile (InputStream resourceStream, File destDir, String targetFileName)
將資源檔案儲存至目錄。
參數 | |
---|---|
resourceStream |
InputStream :要儲存的資源的 {link InputStream} 物件。 |
destDir |
File :資源檔案儲存位置的目錄 ERROR(/File) 物件。 |
targetFileName |
String :要儲存至的檔案名稱的 String 。 |
傳回 | |
---|---|
File |
儲存的檔案 ERROR(/File) 物件。 |
擲回 | |
---|---|
|
若檔案無法儲存。 |
setReadableRecursive
public static void setReadableRecursive (File file)
遞迴設定指定檔案的讀取和執行 (如果是資料夾) 權限。
參數 | |
---|---|
file |
File |
sizeOfDirectory
public static Long sizeOfDirectory (File directory)
傳回目錄回報的大小。
參數 | |
---|---|
directory |
File |
傳回 | |
---|---|
Long |
symlinkFile
public static void symlinkFile (File origFile, File destFile)
將檔案連結至其他檔案的輔助方法
參數 | |
---|---|
origFile |
File :原始檔案 |
destFile |
File :目的地檔案 |
擲回 | |
---|---|
|
如果無法建立檔案符號連結 |
unixModeToPosix
public staticunixModeToPosix (int mode)
將代表 Unix 模式的整數轉換為一組 ERROR(/PosixFilePermission)
參數 | |
---|---|
mode |
int |
傳回 | |
---|---|
|
writeToFile
public static void writeToFile (String inputString, File destFile, boolean append)
用於將字串資料寫入或附加至檔案的輔助方法
參數 | |
---|---|
inputString |
String :輸入 String |
destFile |
File :要寫入或附加至的目的檔案 |
append |
boolean :如果為 true,則會附加至檔案結尾,否則會覆寫 |
writeToFile
public static void writeToFile (String inputString, File destFile)
用於將字串資料寫入檔案的輔助方法
參數 | |
---|---|
inputString |
String :輸入 String |
destFile |
File :要寫入的目標檔案 |
writeToFile
public static void writeToFile (InputStream input, File destFile, boolean append, long startOffset, long size)
用於將串流資料寫入檔案的輔助方法
參數 | |
---|---|
input |
InputStream :未緩衝的輸入串流 |
destFile |
File :要寫入或附加至的目的檔案 |
append |
boolean :如果為 true,則會附加至檔案結尾,否則會覆寫 |
startOffset |
long :要擷取資料的輸入串流起始偏移量 |
size |
long :從輸入串流擷取的位元組數量。將其設為負值,即可從指定偏移處擷取所有內容。 |
writeToFile
public static void writeToFile (InputStream input, File destFile)
用於將串流資料寫入檔案的輔助方法
參數 | |
---|---|
input |
InputStream :未緩衝的輸入串流 |
destFile |
File :要寫入的目標檔案 |
writeToFile
public static void writeToFile (InputStream input, File destFile, boolean append)
用於將串流資料寫入檔案的輔助方法
參數 | |
---|---|
input |
InputStream :未緩衝的輸入串流 |
destFile |
File :要寫入或附加至的目的檔案 |
append |
boolean :如果為 true,則會附加至檔案結尾,否則會覆寫 |
受保護的方法
chmodExists
protected static boolean chmodExists ()
內部輔助程式,用於判斷系統作業系統是否可使用「chmod」。
傳回 | |
---|---|
boolean |
setChmodBinary
protected static void setChmodBinary (String chmodName)
已公開供測試。允許修改我們要尋找的 chmod 二進位名稱,以便測試不支援 chmod 的系統。
參數 | |
---|---|
chmodName |
String |