檔案工具
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 不是空值,則也會使用 abiarch 篩選找到的檔案。 |
static
File
|
findFile(File dir, String fileName)
以遞迴方式搜尋指定目錄,找出名稱相符的第一個檔案 |
static
|
findFiles(String fileName, IAbi abi, boolean includeDirectory, File... dirs)
取得指定目錄中名稱符合指定篩選條件的所有檔案,並篩選 如果 abi 不是空值,則會透過 abi Ararch 找到多個檔案。 |
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)
以遞迴方式設定指定檔案的讀取和 exec (如果資料夾) 權限。 |
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」適用於系統 OS |
static
void
|
setChmodBinary(String chmodName)
公開測試。 |
常數
FILEYSTEM_FILENAME_MAX_LENGTH
public static final int FILESYSTEM_FILENAME_MAX_LENGTH
常數值: 255 人 (0x000000ff)
公用建構函式
檔案工具
public FileUtil ()
公用方法
計算 Base64Md5
public static String calculateBase64Md5 (File file)
計算檔案 base64 md5 的輔助方法。
傳回 | |
---|---|
String |
檔案的 md5 |
計算 Crc32
public static long calculateCrc32 (File file)
計算檔案 CRC-32 的輔助方法。
傳回 | |
---|---|
long |
檔案的 CRC-32 |
擲回 | |
---|---|
|
IOException |
計算 Md5
public static String calculateMd5 (File file)
計算檔案 md5 的輔助方法。
傳回 | |
---|---|
String |
檔案的 md5 |
Chmod
public static boolean chmod (File file, String perms)
參數 | |
---|---|
file |
File |
perms |
String |
傳回 | |
---|---|
boolean |
中性團體 RW
public static boolean chmodGroupRW (File file)
盡可能讓指定檔案群組可供讀取及寫入。
請注意,必須具備執行權限才能存取目錄。詳情請見
chmodGroupRWX(File)
。
如果為「chmod」基礎 OS 不支援系統指令,請將檔案設定為 全部。
參數 | |
---|---|
file |
File :將擁有者和群組設為可寫入的 ERROR(/File) |
傳回 | |
---|---|
boolean |
如果檔案已成功設為群組可寫入,則為 true ,false
否則 |
chmodGroupRWX
public static boolean chmodGroupRWX (File file)
會盡力將指定的檔案群組設為可執行檔、可讀取及寫入。
如果為「chmod」基礎 OS 不支援系統指令,因此會嘗試設定權限 提供給所有使用者
參數 | |
---|---|
file |
File :將擁有者和群組設為可寫入的 ERROR(/File) |
傳回 | |
---|---|
boolean |
如果權限設定成功,值為 true ,否則為 false |
以遞迴方式 chmodRWX
public static boolean chmodRWXRecursively (File file)
參數 | |
---|---|
file |
File |
傳回 | |
---|---|
boolean |
關閉郵遞區號
public static void closeZip (ZipFile zipFile)
此方法已淘汰。
已移至 ZipUtil#closeZip(ZipFile)
。
關閉已開啟的 ERROR(/ZipFile)
,忽略所有例外狀況。
參數 | |
---|---|
zipFile |
ZipFile :要關閉的檔案 |
collectionJars
public staticcollectJars (File dir)
傳回在指定目錄中找到的所有 jar 檔案
參數 | |
---|---|
dir |
File |
傳回 | |
---|---|
|
比較檔案內容
public static boolean compareFileContents (File file1, File file2)
可對兩個檔案進行位元組層級內容比較的公用程式方法。
參數 | |
---|---|
file1 |
File |
file2 |
File |
傳回 | |
---|---|
boolean |
如果檔案內容相同,則為 true |
ConversionSizeToBytes
public static long convertSizeToBytes (String sizeString)
convertToReadableSize(long)
的相反詞。轉換可閱讀的格式。
轉換為位元組的值。convertToReadableSize(long)
。
參數 | |
---|---|
sizeString |
String :大小的字串說明。 |
傳回 | |
---|---|
long |
大小 (以位元組為單位) |
擲回 | |
---|---|
IllegalArgumentException |
如果無法辨識大小 |
ConversionToDiskSpaceIf 需要 ed
public static IOException convertToDiskSpaceIfNeeded (IOException e)
如有需要,可將錯誤納入磁碟空間錯誤訊息。
參數 | |
---|---|
e |
IOException |
傳回 | |
---|---|
IOException |
conversionToReadableSize
public static String convertToReadableSize (long sizeLong)
將指定檔案大小 (以位元組為單位) 轉換為 X.Y[KMGT] 格式,以便更易讀的格式。
參數 | |
---|---|
sizeLong |
long :檔案大小 (以位元組為單位) |
傳回 | |
---|---|
String |
針對檔案大小的描述性字串 |
複製檔案
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 |
建立的目錄 |
建立臨時性
public static File createTempDir (String prefix)
在系統預設暫存檔案目錄中建立暫存目錄的輔助函式。
參數 | |
---|---|
prefix |
String :用來產生檔案名稱的前置字串字串;不得小於
長度為 3 個字元 |
傳回 | |
---|---|
File |
建立的目錄 |
擲回 | |
---|---|
|
如果無法建立檔案 |
建立臨時性
public static File createTempDir (String prefix, File parentDir)
用於建立臨時目錄的輔助函式。
參數 | |
---|---|
prefix |
String :用來產生檔案名稱的前置字串字串;不得小於
長度為 3 個字元 |
parentDir |
File :要建立目錄的父項目錄。如果
null :系統會使用系統預設臨時目錄。 |
傳回 | |
---|---|
File |
建立的目錄 |
擲回 | |
---|---|
|
如果無法建立檔案 |
建立臨時檔案
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 |
分區的磁碟空間低於允許的下限 |
建立臨時檔案
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 |
建立壓縮檔
public static File createZip (File dir)
此方法已淘汰。
已移至 ZipUtil#createZip(File)
。
這個公用程式方法可以建立包含指定目錄的暫存 ZIP 檔案 所有內容
參數 | |
---|---|
dir |
File :要壓縮的目錄 |
傳回 | |
---|---|
File |
包含目錄內容的臨時 ZIP ERROR(/File) |
擲回 | |
---|---|
|
如果無法建立 ZIP 檔案 |
建立壓縮檔
public static void createZip (File dir, File zipFile)
此方法已淘汰。
已移至 ZipUtil#createZip(File, File)
。
這個公用程式方法可以建立包含指定目錄的 ZIP 檔案 所有內容
參數 | |
---|---|
dir |
File :要壓縮的目錄 |
zipFile |
File :要建立的 ZIP 檔案,但該檔案不存在 |
擲回 | |
---|---|
|
如果無法建立 ZIP 檔案 |
刪除檔案
public static void deleteFile (File file)
請嘗試刪除檔案。適合用來清理
在 finally
個段落。
參數 | |
---|---|
file |
File :可以是空值。 |
確保 GroupRWX
public static boolean ensureGroupRWX (File file)
會盡力確保指定的檔案群組可執行檔、可讀取及寫入。
如果為「chmod」基礎 OS 不支援系統指令,因此會嘗試 允許所有使用者的權限系統會同步處理作業,避免引入競爭狀況 存取快取中的檔案,例如GCSFileDownloader。
參數 | |
---|---|
file |
File :將擁有者和群組設為可寫入的 ERROR(/File) |
傳回 | |
---|---|
boolean |
如果權限設定成功,值為 true ,否則為 false |
從 Zip 檔案擷取檔案
public static File extractFileFromZip (ZipFile zipFile, String filePath)
此方法已淘汰。
已移至 ZipUtil#extractFileFromZip(ZipFile, String)
。
可將特定檔案從 ZIP 檔案解壓縮成 tmp 檔案的公用程式方法
參數 | |
---|---|
zipFile |
ZipFile :要擷取的 ERROR(/ZipFile) |
filePath |
String :要擷取的檔案路徑 |
傳回 | |
---|---|
File |
ERROR(/File) ;如果找不到,則為空值 |
擲回 | |
---|---|
|
如果無法擷取檔案 |
擷取 Zip
public static void extractZip (ZipFile zipFile, File destDir)
此方法已淘汰。
已移至 ZipUtil#extractZip(ZipFile, File)
。
可將 ZIP 檔案的完整內容擷取至指定目錄的公用程式方法
參數 | |
---|---|
zipFile |
ZipFile :要擷取的 ERROR(/ZipFile) |
destDir |
File :要擷取檔案的本機目錄 |
擲回 | |
---|---|
|
如果無法擷取檔案 |
尋找目錄
public static File findDirectory (String dirName, File... dirs)
搜尋並傳回其他目錄的第一個目錄 ERROR(/File)
。
參數 | |
---|---|
dirName |
String :我們要尋找的目錄名稱。 |
dirs |
File :我們要搜尋的目錄清單。 |
傳回 | |
---|---|
File |
找到目錄的 ERROR(/File) ,如果找不到,則傳回空值。 |
擲回 | |
---|---|
|
IOException |
findDirsUnder
public staticfindDirsUnder (File rootDir, File relativeParent)
以遞迴方式找出指定 rootDir
下的所有目錄
參數 | |
---|---|
rootDir |
File :要搜尋的根目錄 |
relativeParent |
File :傳回所有 ERROR(/File) 的選用父項。如未指定
所有 ERROR(/File) 都會相對於 rootDir 。 |
傳回 | |
---|---|
|
一組 ERROR(/File) ,代表 rootDir 下的所有目錄。
包括 rootDir 本身如果 rootDir 為空值,則會有空白集合
。 |
尋找檔案
public static File findFile (String fileName, IAbi abi, File... dirs)
取得指定目錄中名稱符合指定篩選條件的檔案路徑,以及 如果 abi 不是空值,則也會使用 abiarch 篩選找到的檔案。傳回第一個找到的相符檔案。
參數 | |
---|---|
fileName |
String :比對檔案路徑的規則運算式 String |
abi |
IAbi :與目標相符的 Abi IAbi 物件 |
dirs |
File :ERROR(/File) 目錄的 varargs 陣列,用於搜尋檔案 |
傳回 | |
---|---|
File |
如果找不到 ERROR(/File) 或 null |
尋找檔案
public static File findFile (File dir, String fileName)
以遞迴方式搜尋指定目錄,找出名稱相符的第一個檔案
參數 | |
---|---|
dir |
File :要搜尋的目錄 |
fileName |
String :要搜尋的檔案名稱 |
傳回 | |
---|---|
File |
如果找不到 ERROR(/File) 或 null |
尋找檔案
public staticfindFiles (String fileName, IAbi abi, boolean includeDirectory, File... dirs)
取得指定目錄中名稱符合指定篩選條件的所有檔案,並篩選 如果 abi 不是空值,則會透過 abi Ararch 找到多個檔案。
參數 | |
---|---|
fileName |
String :比對檔案路徑的規則運算式 String |
abi |
IAbi :與目標相符的 Abi IAbi 物件 |
includeDirectory |
boolean :是否在搜尋結果中納入目錄 |
dirs |
File :ERROR(/File) 物件的陣列,用於搜尋檔案 |
傳回 | |
---|---|
|
找不到一組 ERROR(/File) ;如果找不到的話,則為空白 |
尋找檔案
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) 分隔 |
gzip 檔案
public static void gzipFile (File file, File gzipFile)
此方法已淘汰。
已移至 ZipUtil#gzipFile(File, File)
。
建立單一檔案 gzip 壓縮版本的輔助方法。
參數 | |
---|---|
file |
File :原始檔案 |
gzipFile |
File :要放入壓縮內容的檔案 |
擲回 | |
---|---|
|
IOException |
硬連結檔案
public static void hardlinkFile (File origFile, File destFile)
一種輔助方法,可將檔案永久連結至其他檔案。用於複製的備用方案 分區連結
參數 | |
---|---|
origFile |
File :原始檔案 |
destFile |
File :目的地檔案 |
擲回 | |
---|---|
|
如果無法硬連結檔案 |
硬連結檔案
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 |
儲存資源檔案
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)
以遞迴方式設定指定檔案的讀取和 exec (如果資料夾) 權限。
參數 | |
---|---|
file |
File |
目錄大小
public static Long sizeOfDirectory (File directory)
傳回目錄回報的大小。
參數 | |
---|---|
directory |
File |
傳回 | |
---|---|
Long |
符號連結檔案
public static void symlinkFile (File origFile, File destFile)
將檔案符號連結至其他檔案的輔助方法
參數 | |
---|---|
origFile |
File :原始檔案 |
destFile |
File :目的地檔案 |
擲回 | |
---|---|
|
無法建立符號連結檔案 |
UnixModeToPosix
public staticunixModeToPosix (int mode)
將代表 Unix 模式的整數轉換為一組 ERROR(/PosixFilePermission)
參數 | |
---|---|
mode |
int |
傳回 | |
---|---|
|
寫入檔案
public static void writeToFile (String inputString, File destFile, boolean append)
將字串資料寫入或附加至檔案的輔助方法
參數 | |
---|---|
inputString |
String :輸入內容 String |
destFile |
File :要寫入或附加的目的地檔案 |
append |
boolean :如果為 true,則附加到檔案結尾,否則會覆寫掉 |
寫入檔案
public static void writeToFile (String inputString, File destFile)
將字串資料寫入檔案的輔助方法
參數 | |
---|---|
inputString |
String :輸入內容 String |
destFile |
File :要寫入的目的地檔案 |
寫入檔案
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 :從輸入串流擷取的位元組數,請設為負值做為
從指定偏移處開始擷取所有內容。 |
寫入檔案
public static void writeToFile (InputStream input, File destFile)
將串流資料寫入檔案的輔助方法
參數 | |
---|---|
input |
InputStream :未緩衝處理的輸入串流 |
destFile |
File :要寫入的目的地檔案 |
寫入檔案
public static void writeToFile (InputStream input, File destFile, boolean append)
將串流資料寫入檔案的輔助方法
參數 | |
---|---|
input |
InputStream :未緩衝處理的輸入串流 |
destFile |
File :要寫入或附加的目的地檔案 |
append |
boolean :如果為 true,則附加到檔案結尾,否則會覆寫掉 |
保護方法
ChmodExists
protected static boolean chmodExists ()
內部輔助程式,用於判斷「chmod」適用於系統 OS
傳回 | |
---|---|
boolean |
setChmodBinary
protected static void setChmodBinary (String chmodName)
公開測試。允許修改我們尋找的 chmod 二進位檔名稱,以便進行測試 也沒有支援 chmod 的系統
參數 | |
---|---|
chmodName |
String |