apache的FileUtils的jar包下載匯入以及FileUtils方法
阿新 • • 發佈:2018-12-31
下載地址: * http://commons.apache.org/proper/commons-io/download_io.cgi
Java中的一般的方法,我們要複製一個檔案,可能需要讀取原始檔,生成流物件,再寫入一個新的檔案中,使用apache commons-io很容就可以處理檔案的複製。
下面的例子演示我們怎樣使用FileUtils.copyFile方法在同一個資料夾複製檔案和使用FileUtils.copyFileToDirectory方法複製到指定的資料夾中。其中System.getProperty("java.io.tmpdir")為通過JVM讀取java.io.tmpdir屬性取得臨時資料夾,每種作業系統有所不同,Windows一般是C:\DOCUME~1\使用者~1\LOCALS~1\Temp,Solaris一般是:/var/tmp/,Linux和Mac OS X一般是:/tmp,Windows的java.io.tmpdir屬性值可以看環境變數->使用者變數中的TMP。
當然我們一般使用的是絕對或相對路徑,如要複製到F:\ajava目錄中,我們只需將targetDir改成File targetDir = new File("F:\\ajava");執行後就可以看到結果。
Java中的一般的方法,我們要複製一個檔案,可能需要讀取原始檔,生成流物件,再寫入一個新的檔案中,使用apache commons-io很容就可以處理檔案的複製。
下面的例子演示我們怎樣使用FileUtils.copyFile方法在同一個資料夾複製檔案和使用FileUtils.copyFileToDirectory方法複製到指定的資料夾中。其中System.getProperty("java.io.tmpdir")為通過JVM讀取java.io.tmpdir屬性取得臨時資料夾,每種作業系統有所不同,Windows一般是C:\DOCUME~1\使用者~1\LOCALS~1\Temp,Solaris一般是:/var/tmp/,Linux和Mac OS X一般是:/tmp,Windows的java.io.tmpdir屬性值可以看環境變數->使用者變數中的TMP。
當然我們一般使用的是絕對或相對路徑,如要複製到F:\ajava目錄中,我們只需將targetDir改成File targetDir = new File("F:\\ajava");執行後就可以看到結果。
package demo2; import java.io.File; import java.io.IOException; import org.apache.commons.io.*; public class demo2 { public static void main(String[] args) { try { // 源File物件 File source = new File("E:/test/testfyw.txt"); //寫入文字在source檔案中,true為追加 FileUtils.write(source, "程式換api","UTF-8",true); // 備份的File物件 File target = new File("E:/test/testfyw2.txt"); //通過JVM讀取java.io.tmpdir屬性取得臨時資料夾 // File targetDir = new File(System.getProperty("java.io.tmpdir")); File directory = new File("E:/test/textin"); //在同一個資料夾複製檔案 System.out.println("複製 " + source + " 檔案到 " + target); FileUtils.copyFile(source, target); String readFileToString = FileUtils.readFileToString(source); System.out.println("檔案裡的內容是:"+readFileToString); // 根據指定的資料夾複製 System.out.println("複製 " + source + " 檔案到" + directory + "目錄"); FileUtils.copyFileToDirectory(source, directory); //刪除目錄 //static void:deleteDirectory(File directory) System.out.println("刪除目錄:"+directory); FileUtils.deleteDirectory(directory); //資料夾不是空,依然可以被刪除,永遠不會丟擲異常 System.out.println("刪除目錄:資料夾不是空,依然可以被刪除,永遠不會丟擲異常 "+"E:/test/test2"); FileUtils.deleteQuietly(new File("E:/test/test2")); } catch (IOException e) { e.printStackTrace(); } } }