bazı iç dosyası hariç bir klasör kopyalamakJava Ben bu yapı ile bir klasör var
AnaKlasör
--Sub1
--File .scl
--File .awl
--Other files
--Sub2
--Files
--Sub3
--Sub4
ben başka bir konuma kopyalamak istediğiniz ama sub3 kaçınılması ve (sarkan olmak istiyorum
FileUtils.copyDirectory(srcDir, dstDir, new FileFilter() {
public boolean accept(File pathname) {
// We don't want 'Sub3' folder to be imported
// + look at the settings to decide if some format needs to be
// excluded
String[] ignoreList= new String[]{
!Settings.getSiemensOptionAWL() ? ".awl":"uselessStringWilNeverBeFound",
!Settings.getSiemensOptionSCL() ? ".scl":"uselessStringWilNeverBeFound",
"Sub3"
};
return !(ignoreFile(pathname, ignoreList) && pathname
.isDirectory());
}
}, true);
public static boolean ignoreFile(File file, String[] ignoreList) {
for (final String ignoreStr : ignoreList)
if (file.getAbsolutePath().contains(ignoreStr))
return true;
return false;
}
: durum) Sub1 İşte
bazı dosya ı şimdiye kadar yaptıklarından bir özdür
Görünüşte işe yarıyor. Ama bence çok çirkin bir çözüm .... Daha iyi bir yolu bilen var mı?
P.S.: Tabii Settings.getSiemensOptionAWL ait () sadece boolean fonksiyonu
Dizinin tamamını yeni konuma kopyalamak kolay olabilir, ardından silebilirsiniz orada olmaması gereken dosyaları (bu kopyadan). Açıkçası bu, güdü temel işlevsellikten ziyade güvenlikle ilgili ise uygun olmayacaktır. –
Neyi kastettiğimi görüyorum ... ama kullanıcının ne yaptıklarını değil, veri kopyalama riskiyle karşı karşıya kalmadığınızı hayal edin.(durum böyle değil ama temiz bir çözüme sahip olmak istiyorum) :) – Stefano
bile ... görünüşte bazen işe yarıyor ama bazen öyle değil ... belki de aynı düşüncenin daha iyi bir yolu var! – Stefano