圖片:
圖片:
.net帶進(jìn)度條復(fù)制文件夾
方案
列出所有子文件夾,再創(chuàng)建,復(fù)制文件
大文件可以單獨(dú)做進(jìn)度條
缺點(diǎn):設(shè)計(jì)會更復(fù)雜
直接用內(nèi)置的復(fù)制文件夾功能
缺點(diǎn):碰到某個(gè)文件權(quán)限不足或被鎖定就會中斷,任務(wù)失敗
難題
復(fù)制整個(gè)文件夾會卡住窗體:采用多線程
計(jì)時(shí)器1,檢測目標(biāo)文件夾文件占用空間
復(fù)制完了硬盤寫入沒跟上要再加計(jì)時(shí)器2
功能做完了,太累,界面都懶得美化了
待完善功能
累計(jì)用時(shí),復(fù)制速度每秒?Mb
顯示文件數(shù)量,文件夾數(shù)量,已完成數(shù)量
用來測試的文件夾,不能太小,否則看不到文件復(fù)制進(jìn)度,太大了也不行。
C:\Windows\SysWOW64\
大小1GB左右,1.4萬個(gè)文件,380個(gè)文件夾
復(fù)制一下30秒左右,剛剛好。但是.NET寫的代碼無法復(fù)制系統(tǒng)目錄,誰有辦法?
后面就只能手工復(fù)制到一個(gè)Ramdisk內(nèi)存盤,測試N遍的寫入,再手工刪除,刪一次都要好幾秒,還老是彈出對話框是否跳過哪些文件之類。早知道直接寫個(gè)代碼一鍵刪除,省得我累死