io流處理資料夾複製功能(java程式碼)
阿新 • • 發佈:2019-01-07
拷貝某個目錄下得所有檔案拷指定位置
- 思想歸納
- 首先我們需要做的先獲取到資原始檔夾路徑,這裡我們先在程式中寫死,然後我們還需要一個目標資料夾就是你需要拷貝到哪裡。有了這兩個資料夾我就可以進行復制了
- 然後我們首先要先將目標檔案路徑創建出來,然後我們在對原始檔進行遍歷,遍歷時我添加了兩個辨認方法
- 1、如果是系統識別的標準檔案則執行檔案複製功能
- 2、如果是資料夾的話則在目標資料夾對應的地方進行建立資料夾,方便遍歷。
- 總體思想就是這些。下面我們需要完成的函式有 檔案複製函式+資料夾建立函式
- 檔案拷貝函式:
- 1、建立輸入物件
BufferedInputStream bis=new BufferedInputStream(new FileInputStream(SourceFile));
- 2、建立輸出流物件
BufferedOutputStream bos=new BufferedOutputStream(new FileOutputStream(TargetFile));
- 3、獲取資料
- 完成資料的複製
- 1、建立輸入物件
- 下面就是資料夾的建立
- 獲取路徑並遍歷
(new File(TargetFolder)).mkdirs();//建立目標資料夾
File[] files=(new File(SourceFolder)).listFiles();//獲取原資料夾下的所有檔案準備遍歷
- 判斷是否是檔案
if(f.isFile())//檢測f是否是標準檔案
{
//獲取原始檔和目標檔案
File SourceFile=f;
File TargetFile=new File(new File(TargetFolder).getAbsoluteFile()+f.separator+f.getName());
//準備進行復制
CopyFile(SourceFile, TargetFile);
}
- 判斷是否是資料夾
else if(f.isDirectory())//檢測到f是個標準目錄
{
CopyFolder(SourceFolder+f.getName(), TargetFolder+File.separatorChar+f.getName());
}
- 獲取路徑並遍歷
- 檔案拷貝函式:
這兩個函式完成後只要在主函式中我們在將原始檔和目標檔案進行一次遍歷就行了,如果主函式中不進行遍歷我們將無訪問權進行資料的訪問。