1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
|
public class lireRepertoireRecursif {
public static void main(String[] args) {
String source = "path de ton repertoire source";
String dest = "path de ton repertoire de destination";
ArrayList<File> files = getPaths(new File(source), new ArrayList<File>());
if (files == null)
return;
files.forEach(x -> {
try {
System.out.println(x.getCanonicalPath());
copie(x.getCanonicalPath(), dest + x.getName());
} catch (IOException e) {
e.printStackTrace();
}
});
}
private static ArrayList<File> getPaths(File file, ArrayList<File> list) {
if (file == null || list == null || !file.isDirectory())
return null;
File[] fileArr = file.listFiles();
for (File f : fileArr) {
if (f.isDirectory()) {
getPaths(f, list);
}
try {
// ici je ne selectionne que les fichiers java
if (f.getCanonicalPath().endsWith(".java")) {
list.add(f);
}
} catch (IOException e) {
e.printStackTrace();
}
}
return list;
}
private static void copyFile(String src, String dest) {
File source = new File(src);
File destination = new File(dest);
try {
Files.copy(source.toPath(), destination.toPath());
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
} |
Partager