mohadese20
جمعه 20 تیر 1393, 00:26 صبح
سلام.من کدی رو لازم دارم که بتونه تا چهار لایه وارد فولدر بشه به صورت درختی پیمایش کنه تا بعد از چهار فولدر به فایل های توی فولدر نهایی برسه و تعداد آنها را به همراه اسمشان برگرداند وبترتیب همچنین فولدرهای بعدی و فایلهای درون آنها
این کدرو نوشتم ولی مشکلم اینه که نحوه تشخیص فایل از فولدر رو نمیدونم چطور بنویسم برنامه تا هزار تا فولدر موجود رو بافایلهای درون آنها برمیگردونه ولی چون چهارلایه ای هست اگه زودتر از چهار فولدر در فولدر دوم فایل باشه ارور میده چون چهارلایه کامل نمیشه
(تعداد زیادی فولدر هست که توهرکدوم سه فولدر دیگه وتواخری هم تعدادی فایل ،میخوام تعداد فایل ها و فولدر ها رو بااسامی برگردونه و بدونم ماکزیمم تعداد فایلها چه تعدادیه )
public static void main(String[] args) {
// TODO code application logic here
int [] a =new int[10000];
int h=0;
String[] dir1;
String[] dir2;
String[] dir = new java.io.File("Z:\\kargozini\\PERSENEL").list();
for (int i=0;i<dir.length;i++) {
dir1= new java.io.File("Z:\\kargozini\\PERSENEL\\" + dir[i]).list();
for (int j=0;j<dir1.length;j++ ){
dir2= new java.io.File("Z:\\kargozini\\PERSENEL\\" + dir[i]+ "\\"+ dir1[j]).list();
for(int k=0;k<dir2.length;k++) {
if (!dir2[k].contains(".DAT") && !dir2[k].contains(".TXT") ) {
a[h++]=new java.io.File("Z:\\kargozini\\PERSENEL\\" + dir[i]+ "\\"+ dir1[j]+ "\\" + dir2[k]).list().length;
System.out.println(h+":"+ dir[i]+dir1[j]+ dir2[k] + " :" + a[h-1]);
}
}
}
}
}
}
این کدرو نوشتم ولی مشکلم اینه که نحوه تشخیص فایل از فولدر رو نمیدونم چطور بنویسم برنامه تا هزار تا فولدر موجود رو بافایلهای درون آنها برمیگردونه ولی چون چهارلایه ای هست اگه زودتر از چهار فولدر در فولدر دوم فایل باشه ارور میده چون چهارلایه کامل نمیشه
(تعداد زیادی فولدر هست که توهرکدوم سه فولدر دیگه وتواخری هم تعدادی فایل ،میخوام تعداد فایل ها و فولدر ها رو بااسامی برگردونه و بدونم ماکزیمم تعداد فایلها چه تعدادیه )
public static void main(String[] args) {
// TODO code application logic here
int [] a =new int[10000];
int h=0;
String[] dir1;
String[] dir2;
String[] dir = new java.io.File("Z:\\kargozini\\PERSENEL").list();
for (int i=0;i<dir.length;i++) {
dir1= new java.io.File("Z:\\kargozini\\PERSENEL\\" + dir[i]).list();
for (int j=0;j<dir1.length;j++ ){
dir2= new java.io.File("Z:\\kargozini\\PERSENEL\\" + dir[i]+ "\\"+ dir1[j]).list();
for(int k=0;k<dir2.length;k++) {
if (!dir2[k].contains(".DAT") && !dir2[k].contains(".TXT") ) {
a[h++]=new java.io.File("Z:\\kargozini\\PERSENEL\\" + dir[i]+ "\\"+ dir1[j]+ "\\" + dir2[k]).list().length;
System.out.println(h+":"+ dir[i]+dir1[j]+ dir2[k] + " :" + a[h-1]);
}
}
}
}
}
}